Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.02;
Скачать: CL | DM;

Вниз

поможите с SQL запросом (сервер MySQL)   Найти похожие ветки 

 
DillerXX   (2008-01-26 15:02) [0]

Пусть дана таблица date_ DATE, inf INT. значения date_ уникальны. Мне нужно найти сумму значений inf по каждой неделе из всего временного промежутка, который описывает таблица. При чём неделя начинается во вторник, а заканчивается в понедельник. Ну тоесть по сути, полная аналогия вот с такой задачей: есть бассейн, регистрируем сколько людей было в бассейне в день. Хотим посчитать статистику посещения за каждую неделю (недели так же начинаются во вторник). И если ещё не наступил конец недели, то её выводить не надо. Пытался, ничего хорошего не получилось. Пойдёт алгоритм даже за куб.


 
Юрий ©   (2008-01-26 15:04) [1]

SELECT SUM(inf) FROM table GROUP BY WEEK(date); ?


 
Юрий ©   (2008-01-26 15:05) [2]

Хотя, судя по всему, не в тему. :)


 
Kerk ©   (2008-01-26 15:38) [3]

Недавно была похожая ветка
Но для кастрата MySQL даже не знаю что посоветовать кроме временной использования таблицы с двумя полями: количество_человек_в_день,  номер_недели_к_которой_день относится. А там уже совсем просто посчитать.


 
DillerXX   (2008-01-26 15:40) [4]


> не в тему

Угу.

Мне не нужна статистика по номерам недели в месяцах, мне нужна статистика (сумма) по каждому промежутку вторник-понедельник из всех описанных в таблице записей. Никак не придумаю как уникально идентифицировать каждый такой промежуток, чтобы можно было сделать обычный GROUP BY и отфильтровать последнюю незаконченную неделю...


 
DillerXX   (2008-01-26 15:41) [5]


> номер_недели_к_которой_день относится

Вот это как бы?


 
Kerk ©   (2008-01-26 15:44) [6]


> DillerXX   (26.01.08 15:41) [5]

week(day-1) ?


 
sniknik ©   (2008-01-26 15:45) [7]

Юрий ©   (26.01.08 15:04) [1]
> SELECT SUM(inf) FROM table GROUP BY WEEK(date); ?
SELECT SUM(inf) FROM table GROUP BY WEEK(date-1);
если у них там недели начинаются с понедельника (могут с субботы например, или вообще настраиваться как в mssql... но тогда бы вопроса не было бы)


 
Юрий ©   (2008-01-26 15:48) [8]

> [7] sniknik ©   (26.01.08 15:45)
> SELECT SUM(inf) FROM table GROUP BY WEEK(date-1);

Не совсем верно, нужно (как я понял) для всех промежутков вторник-понедельник, а не для только одного года.


 
DillerXX   (2008-01-26 15:49) [9]

Тьфу мля, я идиот :( Мне как то в башку стукнуло что WEEK вернёт номер недели в месяце, а не в году, хотя даже документацию прочитал.. Всем спасибо, извиняюсь.


 
DillerXX   (2008-01-26 15:51) [10]


> нужно (как я понял) для всех промежутков вторник-понедельник,
>  а не для только одного года.

В принципе да, но в данном случае проект кратковременный, а год только начался :) Если подскажите как будет в течении года, буду благодарен, на будущее.


 
DillerXX   (2008-01-26 16:04) [11]


> Если подскажите как будет в течении года, буду благодарен,
>  на будущее.

Если подскажите как будет вне границ года, буду благодарен, узнаю на будущее.



Страницы: 1 вся ветка

Текущий архив: 2008.03.02;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
15-1201495745
vajo
2008-01-28 07:49
2008.03.02
Как настроить обновления Win Vista Busines?


2-1202303072
alexsashkan
2008-02-06 16:04
2008.03.02
Проблема с добавлением строк в DBGrid


15-1201617269
Asker
2008-01-29 17:34
2008.03.02
Можно ли удалить службу WIndows руками в WInXP?


2-1202062927
batya-x
2008-02-03 21:22
2008.03.02
TbitMap и function


2-1201900613
HaJik
2008-02-02 00:16
2008.03.02
Как мне "прикрутить" на событие функцию, которая также бы храни