Если вы используете хранимые процедуры, вы можете сделать что-то вроде этого:
CREATE PROCEDURE `FindRespondents` (
IN `_day` varchar(255),
...
)
BEGIN
SELECT DISTINCT fkRespondentID
FROM tblRespondentDayTime
WHERE (_day Is Null OR fldDay = _day)
AND ...
END;
|
Передача null
для _day
означает, что любой fldDay
в порядке.Любое другое значение для _day
, и оно должно совпадать.Я предположил, что fldDay
- это текст, но, конечно, вы можете здесь все правильно ввести.
Я знаю, что некоторые люди не являются поклонниками хранимых процедур, но это может быть удобно для инкапсуляции логики запросов таким образом.