|
Выбор первого/последнего по дате
|
|||
---|---|---|---|
#18+
Есть таблица вида: Код: sql 1. 2. 3. 4.
то есть TimeStamp хранится в формате секунд unix с плавающей точкой. Нужно выделить из таких таблиц для каждой даты первую и последнюю записи, точнее только их точное время, а также полное количество записей в этот день. Причём, время до 6:00 следующих суток нужно считать за предыдущий день. Я в SQL вообще новенький, пока догадываюсь, что скорее всего в общем запрос должен выглядеть как-то так: Код: sql 1.
Например, из таблицы приведённой в пример должны выбраться записи с Data2 и Data3 за число 09.12 (количество 2), и запись с Data1 за число 08.12 (количество 1). Результат нужен сразу для всех дат в таблице. Помогите пожалуйста составить верный и быстрый запрос (скорость важна, в базах от 10 5 до 10 7 элементов). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2012, 01:30 |
|
Выбор первого/последнего по дате
|
|||
---|---|---|---|
#18+
Открываем учебник и читаем про агрегатные функции: min, max и count. И никаких хитрых запросов. А для очень быстрых запросов на гигантских объемах подумай о создании вторичной таблицы в которую ты будешь раз в день сбрасывать суммы накопленных за прошедшие сутки данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2012, 06:16 |
|
|
start [/forum/topic.php?fid=54&msg=38071294&tid=2008951]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 267ms |
total: | 393ms |
0 / 0 |