Powiedzmy mam tabeli, email_phone_notes
, który wygląda tak:MySQL: Jak większość SELECT wiersze z wielu par w WHERE
+-----------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+--------------+------+-----+---------+-------+
| email | varchar | NO | PRI | NULL | |
| phone | varchar | NO | PRI | NULL | |
| notes | text | NO | | 0 | |
+-----------------------+--------------+------+-----+---------+-------+
Tak, każda kombinacja e-mail/telefon jest wyjątkowy, ale można mieć kilka adresów e-mail z różnymi numerami telefonów i odwrotnie. Jest to trochę zawiłe, ale odzwierciedla mój scenariusz.
Chciałbym zrobić kwerendę tak:
SELECT * FROM email_phone_notes WHERE email = '[email protected]' AND phone = '555-1212';
Ale chciałbym zrobić wiele par na raz, więc nie muszę dokonać kilku SELECT
zapytań. Ważne jest również, aby pary były ze sobą połączone, ponieważ nie chcę zwrócić błędnej kombinacji telefon/e-mail, która nie była wymagana.
Mogłem zrobić coś takiego, ale z powodu możliwości kilkuset wartości zapytanie będzie naprawdę długie.
SELECT * FROM email_phone_notes WHERE (
(email='[email protected]' && phone='555-1212') ||
(email='[email protected]' && phone='888-1212') ||
...
Czy istnieje bardziej eleganckie rozwiązanie, czy powinienem się z tym uporać? Dzięki!
wow to świetnie SYNTAX! –