2012-01-20 9 views
17

Desidero creare una query da un elenco di valori e restituire i dati per ogni corrispondenza di cat.MySQL Query un elenco di valori

Questo funziona ma non richiede il valore options. Qual è il modo più semplice per interrogare un elenco di valori?

SELECT * 
FROM `table1` 
WHERE `option`='R' && `cat`='12' || `cat`='18' || `cat`='30' 

risposta

55

È possibile utilizzare l'operatore IN

`cat` IN ('12', '18', 30') 
3

Probabilmente dimenticato di racchiudere quelle OR parti in parentesi

SELECT * 
FROM `table1` 
WHERE `option`='R' and (`cat`='12' or `cat`='18' or `cat`='30') 
+0

+1 buon punto ... – JMC

1

SELECT * FROM table1 WHERE option = 'R' e cat IN ('12', '18', 30 ')

+1

Ripete una risposta che è stata pubblicata 3 anni prima. –