Diciamo che ho una tabella, email_phone_notes
che assomiglia a questo:MySQL: come massa selezionare le righe con più coppie nella clausola WHERE
+-----------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+--------------+------+-----+---------+-------+
| email | varchar | NO | PRI | NULL | |
| phone | varchar | NO | PRI | NULL | |
| notes | text | NO | | 0 | |
+-----------------------+--------------+------+-----+---------+-------+
Così, ogni combinazione e-mail/telefono è unico, ma si potrebbe avere diversi indirizzi e-mail con numeri di telefono diversi e viceversa. Questo è un po 'forzato ma rispecchia il mio scenario.
Mi piacerebbe fare una query come questa:
SELECT * FROM email_phone_notes WHERE email = '[email protected]' AND phone = '555-1212';
Ma, mi piacerebbe fare più coppie in una sola volta in modo da non devo fare diverse SELECT
query. È anche importante tenere insieme le coppie perché non voglio restituire una combinazione errata di telefono/email che non è stata richiesta.
Potrei fare qualcosa del genere, ma per la possibilità di diverse centinaia di valori la query sarà davvero lunga.
SELECT * FROM email_phone_notes WHERE (
(email='[email protected]' && phone='555-1212') ||
(email='[email protected]' && phone='888-1212') ||
...
C'è una soluzione più elegante, o dovrei restare con questo? Grazie!
wow che è grande SYNTAX! –