Я хочу получить max no из invgatepass по времени и дате, и если он возвращает null, тогда я хочу запустить другой запрос на основе разных условий, если это также не удается получить какие-либо данные, тогда я хочу получить «1». Это то, что я хочу. Но внутри COALESCE
функция, второй параметр не может быть запросом. Может ли кто-то решить эту проблему. Я не хочу использовать два отдельных запроса после проверки условия внутри php-кода.выполнить запрос, если другой запрос запрашивает значение null в mysql
SELECT COALESCE(
MAX(SUBSTRING_INDEX(InwardNo, '-', -1))+1,
SELECT COALESCE
(
MAX(SUBSTRING_INDEX(InwardNo, '-', -1))+1,
1
)
FROM
invgatepass
WHERE
DATE(CreationDateTime)=CURDATE()
AND
(EXTRACT(HOUR FROM CreationDateTime)) < '17'
)
AS CODE FROM
invgatepass
WHERE
DATE(CreationDateTime)=DATE_SUB(CURDATE(), INTERVAL 1 DAY)
AND
(EXTRACT(HOUR FROM CreationDateTime)) >= '17'"
Является ли это SQL Server? Пожалуйста, добавьте RDBMS в вопрос. –
Это не SQL Server. это mysql. –