2014-02-20 4 views
0

Как группировать данные по месяцам и день неделиГруппы по дню недели и месяц

Я знаю, что это неправильно ..

select sum(x) from demo_table 
group by DATEPART(month,date) 
where DATENAME(weekday,date)='sunday' ; 

где положение не может быть использовано в группе ... , но это это я хочу, нужно

+0

вы можете попробовать 'having' вместо' where' – Miller

ответ

1

Вы, вероятно, хотите

select sum(x) 
from demo_table 
where DATENAME(weekday,date)='sunday' 
group by DATEPART(month,date) 

От SELECT (Transact-SQL)

[С обобщенное_табличное_выражение]

ВЫБОР список_выбора [INTO new_table]

[ОТ table_source] [ГДЕ search_condition]

[GROUP BY group_by_expression]

[HAVING search_condition]

[ORDER BY order_expression [ASC | DESC]]

1

Поместите пункт where перед group by:

select sum(x) 
from demo_table 
where DATENAME(weekday,date)='sunday' 
group by DATEPART(month,date) ; 
Смежные вопросы