Я пытаюсь написать заявление о ситуации в моем разделе where. Ниже мой запрос. Я хочу выполнить запрос в зависимости от дня недели. В принципе, если в понедельник он должен быть установлен с датой = getdate() - 3 , если в его вторник он должен быть датой набора даты, созданной между getdate() - 3 и getdate() - 1 , если ее wed-friday, то она должна быть установлена дата = getdate() - 1case case в зависимости от дня недели внутри, где статья
SELECT Count(dispute_reference_no)AS reg_inc
FROM mytable
WHERE reasoncd IN ('b2', 'b3')
AND datecreated = (
CASE
WHEN Datename(weekday,Getdate()) = 'Monday' THEN dbo.Fn_getdateonly(Getdate()-3))
WHEN datename(weekday,getdate()) = 'tuesday' THEN (dbo.fn_getdateonly(getdate()-3)
AND dbo.fn_getdateonly(getdate()))
ELSE dbo.fn_getdateonly(getdate()-1)
END)
приведенный выше код не работает. Это не позволит мне добавить диапазон в case case.
очень трудно понять, что вы хотите, но ваши Скобки находятся на неправильные места –
Правильный способ использования 'CASE' -' CASE WHEN ... WHEN ... END 'Ваш END не связан с' Case' – demo
Забудьте об ошибке. Что вы имеете в виду: «нужно создать дату с датой». Вы не можете создать диапазон на 'CASE' и сравнить с одним значением –