Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.03.02;
Скачать: [xml.tar.bz2];

Вниз

поможите с 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.054 c
2-1202040662
slavon
2008-02-03 15:11
2008.03.02
Освобождение памяти


15-1198761848
Thrasher
2007-12-27 16:24
2008.03.02
Компонент для чтения CHM


2-1202561165
oleg_teacher
2008-02-09 15:46
2008.03.02
маска


2-1202485682
Ksanf
2008-02-08 18:48
2008.03.02
Обход графа


2-1202148905
аа2
2008-02-04 21:15
2008.03.02
TDateTime





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский