powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Выбор первого/последнего по дате
2 сообщений из 2, страница 1 из 1
Выбор первого/последнего по дате
    #38071294
chersanya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица вида:

Код: sql
1.
2.
3.
4.
CREATE TABLE DataTable(TimeStamp REAL, DataField TEXT);
INSERT INTO DataTable VALUES (1355001594.79145, "Data1"); -- около 1:20 09.12
INSERT INTO DataTable VALUES (1355037594.30134, "Data2"); -- около 10:20 09.12
INSERT INTO DataTable VALUES (1355087994.90431, "Data3"); -- около 1:20 10.12



то есть TimeStamp хранится в формате секунд unix с плавающей точкой. Нужно выделить из таких таблиц для каждой даты первую и последнюю записи, точнее только их точное время, а также полное количество записей в этот день. Причём, время до 6:00 следующих суток нужно считать за предыдущий день. Я в SQL вообще новенький, пока догадываюсь, что скорее всего в общем запрос должен выглядеть как-то так:

Код: sql
1.
SELECT (тут хитрый запрос) FROM DataTable GROUP BY CAST((TimeStamp/3600-6)/24 AS INTEGER);



Например, из таблицы приведённой в пример должны выбраться записи с Data2 и Data3 за число 09.12 (количество 2), и запись с Data1 за число 08.12 (количество 1). Результат нужен сразу для всех дат в таблице.

Помогите пожалуйста составить верный и быстрый запрос (скорость важна, в базах от 10 5 до 10 7 элементов).
...
Рейтинг: 0 / 0
Выбор первого/последнего по дате
    #38071353
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открываем учебник и читаем про агрегатные функции: min, max и count.
И никаких хитрых запросов.

А для очень быстрых запросов на гигантских объемах подумай о создании вторичной таблицы в которую ты будешь раз в день сбрасывать суммы накопленных за прошедшие сутки данных.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Выбор первого/последнего по дате
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]