Mysql
 sql >> Database >  >> RDS >> Mysql

Seleziona da una tabella in cui i campi non corrispondono alle condizioni

La chiave è la query sql, che imposterai come stringa:

$sqlquery = "SELECT field1, field2 FROM table WHERE NOT columnA = 'x' AND NOT columbB = 'y'";

Nota che ci sono molti modi per specificare NOT. Un altro che funziona altrettanto bene è:

$sqlquery = "SELECT field1, field2 FROM table WHERE columnA != 'x' AND columbB != 'y'";

Ecco un esempio completo di come usarlo:

$link = mysql_connect($dbHost,$dbUser,$dbPass) or die("Unable to connect to database");
mysql_select_db("$dbName") or die("Unable to select database $dbName");
$sqlquery = "SELECT field1, field2 FROM table WHERE NOT columnA = 'x' AND NOT columbB = 'y'";
$result=mysql_query($sqlquery);

while ($row = mysql_fetch_assoc($result) {
//do stuff
}

Puoi fare quello che vuoi all'interno del ciclo while sopra. Accedi a ogni campo della tabella come elemento dell'$row array il che significa che $row['field1'] ti darà il valore per field1 sulla riga corrente e $row['field2'] ti darà il valore per field2 .

Nota che se le colonne possono avere NULL valori, quelli non verranno trovati utilizzando nessuna delle sintassi precedenti. Dovrai aggiungere clausole per includere NULL valori:

$sqlquery = "SELECT field1, field2 FROM table WHERE (NOT columnA = 'x' OR columnA IS NULL) AND (NOT columbB = 'y' OR columnB IS NULL)";