Mysql выберите условие запроса - PullRequest
3 голосов
/ 21 апреля 2011

У меня есть два столбца базы данных в базе данных mysql, A и B. В запросе на выбор я хочу реализовать эту логику:

Выберите строки, где A - «X».Если A не задано в строке, то проверьте и выберите строку только в том случае, если столбец B = 'Y'.

Таким образом, можно сказать, что столбец B является запасным вариантом для столбца A.

Как я могу построить запрос SELECT с 'X' и 'Y' в качестве входных данных для предложения WHERE?

Ответы [ 3 ]

7 голосов
/ 21 апреля 2011

Использовать логическую логику:

SELECT *
FROM table
WHERE A = 'X' OR (A IS NULL AND B = 'Y')
2 голосов
/ 21 апреля 2011

SELECT * FROM table WHERE A='X' OR (A IS NULL AND B='Y')

2 голосов
/ 21 апреля 2011

Я думаю, что это должно работать:

SELECT * FROM table
WHERE (A='X') OR ((A IS NULL) AND (B='Y'))
...