помогите пожалуйста очень нужно!!!
В таблице T1 содержатся данные о дате и времени покупки и о сумме чека
A1 A2
10.10.2012 10:10 100.00
10.10.2012 11:10 120.00
11.10.2012 11:10 10.00
12.10.2012 11:10 20.00
12.10.2012 11:10 23.22
только с помощью sql
Составить SQL запрос, который построит итоговый отчет реализации с разрезом по дням недели
(понелельник, вторник ...)
Отчет должен иметь следующий вид
Месяц Понедельник Вторник Среда Четверг Пятница Суббота Воскресение
Январь SUM(пон) SUM(Втр) SUM(Ср) SUM(Чет) SUM(Пят) SUM(Суб) SUM(Воскр)
Февраль SUM(Понед) SUM(Втор) SUM(Ср) SUM(Чет) SUM(Пят) SUM(Суб) SUM(Воск)
1. nmakhnik - 02 Ноября, 2013 - 20:45:31 - перейти к сообщению
2. Мелкий - 02 Ноября, 2013 - 20:59:29 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SELECT month(`date`) AS month, DAYOFWEEK(`date`) AS weekday, sum(`amount`) FROM `orders` WHERE /**/ GROUP BY month, weekday
Или, если воспринимать задачу буквально:
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SELECT case month(`date`)
- when 1 then 'январь'
- when 2 then 'февраль'
- /**/
- end AS month,
- sum(IF(DAYOFWEEK(`date`)=1,`amount`,0)) AS 'Понедельник',
- sum(IF(DAYOFWEEK(`date`)=2,`amount`,0)) AS 'Вторник',
- /**/
- sum(IF(DAYOFWEEK(`date`)=0,`amount`,0)) AS 'Воскресенье' FROM `orders` WHERE /**/ GROUP BY month(`date`)
Мог наврать с синтаксисом case.