Ho una tabella casa cosi' fatta:
idcasa proprietario
1 1
2 2
3 3
4 3
5 3
6 4
7 5
8 5
9 6
L'obiettivo e' trovare le case dove i proprietari hanno piu' di un appartamento
la query dovrebbe tornare
3
4
5
7
8
in quanto il proprietario 3 ha tre appartamenti, il proprietario 5 ha due appartamenti.
Io ho trovato la seguente soluzione
codice:
SELECT distinct D1.idcasa, D1.proprietario as p FROM casa D1, casa D2 WHERE D1.proprietario=D2.proprietario and D1.proprietario= '$idproprietario '
Questo prevede l'aiuto di php in quanto esternamente si fa una query che preleva gli idproprietario che si danno in pasto alla sottoquery:
Codice PHP:
$query_ext = mysql_query("select proprietario from casa");
while($row = mysql_fetch_array($query_ext)){
$idproprietario = $row[proprietario];
$query_int = mysql_query("SELECT distinct D1.idcasa, D1.proprietario as p FROM casa D1, casa D2 WHERE D1.proprietario=D2.proprietario and D1.proprietario= '$idproprietario'")
}
L'obiettivo e' fare solo una query al database...
come si puo' fare?