В настоящее время у меня есть 2 разных сценария sql, которые мне нужно запускать в зависимости от дня недели. Я пытаюсь найти способ объединить их в один, и у меня есть логика, чтобы проверить, в какой день недели это происходит, и на основе этого исходят соответствующие изменения.SQL-заявление с использованием AND в зависимости от дня недели
Так основная структура:
SELECT * FROM table
WHERE foo = 'bar'
AND foo2 = 'bar2'
AND foo3 = 'bar3';
Единственная разница, если это понедельник, один из случаев и нужно изменить.
Так псевдокод я должен выглядеть примерно так:
SELECT * FROM table
WHERE foo = 'bar'
AND foo2 = 'bar2'
if day = 'Monday' then
AND foo3 = 'bar3'
else
AND foo3 = 'bar3a';
Любые идеи? Я попытался включить Case Select, основанный на this, но не сработал для меня.
Спасибо!
Спасибо! Кажется, он работает отлично! Также спасибо, я полностью забыл о заполнении дней в Oracle. – SS113
Хороший ответ. Тем не менее, следует четко указать язык при работе с именами, чтобы не зависеть от соответствующих настроек сеанса: 'TO_CHAR (SYSDATE, 'Dy', 'NLS_DATE_LANGUAGE = AMERICAN')'. –