powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite аналитические функции
6 сообщений из 6, страница 1 из 1
SQLite аналитические функции
    #37337293
afghanetz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поддерживает ли SQLite аналитические функции LEAD/LAG ? Если да, то как правильно написать выражение? Если нет, то какой можно использовать аналог?
Спасибо.
...
Рейтинг: 0 / 0
SQLite аналитические функции
    #37337355
alexy_black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
afghanetz,

вроде бы нет, но можно написать их на С или на С++ и зарегить их там при помощи какой-то функции (набор функций, они есть в доках)
...
Рейтинг: 0 / 0
SQLite аналитические функции
    #37337394
afghanetz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эх, жаль что нету. Надо вычислять следующее минус предыдущее значение, но видимо не судьба(
...
Рейтинг: 0 / 0
SQLite аналитические функции
    #37337629
afghanetz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возникла идея пронумеровать результат и потом добавлять unix_time where rowid+1

Нумеровал так:
Код: plaintext
1.
2.
select rowid as row_num, unix_time as unix_time 
from (select unix_time as unix_time from source_data order by unix_time)
order by unix_time

Теперь бы придумать как добавить )
...
Рейтинг: 0 / 0
SQLite аналитические функции
    #37337930
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Коррелированные подзапросы для того существуют:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
create table tbl(x);
create index tbl_x_idx on tbl(x);
insert into tbl(x) values ( 1 );
insert into tbl(x) values ( 2 );
insert into tbl(x) values ( 3 );
insert into tbl(x) values ( 5 );
insert into tbl(x) values ( 6 );
insert into tbl(x) values ( 7 );

explain  query plan
select x,
  (select max(prev.x) from tbl as prev where prev.x<tbl.x) as prev,
  (select min(next.x) from tbl as next where next.x>tbl.x) as next
from tbl order by x asc;

x|prev|next
 1 || 2 
 2 | 1 | 3 
 3 | 2 | 5 
 5 | 3 | 6 
 6 | 5 | 7 
 7 | 6 |
...
Рейтинг: 0 / 0
SQLite аналитические функции
    #37337935
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Здесь "explain query plan" нужен чтобы убедиться, будет ли планировщик использовать индекс. Это может зависеть от версии SQLite, так что не худо и проверить. Если не будет, несложно расписать подзапросы через "... order by x asc/desc limit 1".
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite аналитические функции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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