2013-04-02 2 views
0

Я использую SQL Server 2008 и имею запрос, который работает ежедневно.
Где [Дата заказа] = getdate() - 1 Мне нужна инструкция, которая будет работать в понедельник и суммировать данные за пятницу, субботу и воскресенье, если это возможно.Получение выходных дней в SQL

Спасибо!

+1

Можете ли вы предоставить то, что у вас есть до сих пор? Что делает отчет в понедельник? Может ли отчет просто рассказать вам о счете с прошлых выходных, независимо от того, был ли он побежден, происходит? – cgatian

+0

Связанный: http://stackoverflow.com/questions/15672274/roll-up-weekend-data-differently-from-weekdays/15672749#15672749 –

ответ

1

Вы могли бы сделать что-то вроде этого, чтобы выбрать все записи в пределах определенного диапазона:

SELECT * 
FROM your_table 
WHERE ((DATEPART(dw, date_created) + @@DATEFIRST) % 7) IN (5,6,0) 

Где:

5 = Пятница
6 = Суббота
0 = воскресенье

-2
select 
case DATEPART(weekday,getdate()) 
when 2 then SUM(weekend just gone) 
else SUM(yesterday) 
end as totalamount 
from 
etc... 

Вам нужно проверить, какой именно день недели - понедельник!

+0

Это не только неполно, но и неправильно. – cgatian

+0

Не все ответы должны быть полными, их недостаточно, чтобы составить полный пример. Это просто, чтобы дать основной ответ, используя datepart. – Lukos

+1

Могут ли люди голосовать без ответа? Вышеприведенный код действителен и, насколько я могу видеть ответы на вопрос. – Lukos

Смежные вопросы