- Home
- Categorie
- Coding e Sistemistica
- PHP
- Scelgo gli id da una tabella e calcolo la media delle risposte con i dati su tab 2
-
Scelgo gli id da una tabella e calcolo la media delle risposte con i dati su tab 2
Voglio vedere se le risposte ad un questionario tra condomini e amministratori di condominio sono molto diverse o simili.
Nella prima tabella "NOMI" ho questi campi:
u_id
u_nome (dove salvo il nome)
u_admin (dove metto 1 se è un admin, 0 se è un condominio)Nella seconda tabella "RISPOSTE" ho questi campi
s_id
s_idriferimento (dove salvo il valore u_id di riferimento)
s_risposta (dove salvo un valore da 1 a 10)Ora vorrei calcolare queste due medie: la prima composta da tutti gli admin al seconda dai solo condomini.
Quindi potrei fare un SELECT * FROM nome WHERE u_admin ='1'
e poi come ricavo i valori di s_risposta per solo queste righe? E come ne calcolo velocemente la media?C'è un modo veloce?
Grazie
-
Devi fare una join:
SELECT s_risposta FROM risposte INNER JOIN nomi ON nomi.u_id = risposte.s_idriferimento WHERE nomi.u_admin = 1
Questo ti mostra ogni singola risposta data dagli amministratori. Se vuoi fare la media devi usare AVG ( mi pare sia questa la funzione ), però ricorda che il risultato lo avrai come numero non intero ( da arrotondare con round ).
In tal caso:
SELECT AVG(s_risposta) FROM risposte INNER JOIN nomi ON nomi.u_id = risposte.s_idriferimento WHERE nomi.u_admin = 1
-
Grazie per la risposta.
Ho usato la funzione IN.
$query= SELECT blablabla IN (SELECT ute_id FROM as_utenti WHERE u_admin='1')