Описание тега window-functions

Оконная функция - это тип операции SQL, которая агрегирует по разделу набора результатов.
1 ответ

Использование функции ранга postgres для ограничения n лучших результатов

Я запрашиваю таблицу счетов кредиторской задолженности, в которой есть список ap-документов, каждый из которых имеет (среди прочих полей) те, в которых я заинтересован, для выполнения сводных запросов: vendor_id, сумма и дата. Я хотел бы построить з…
1 ответ

Оконная функция PostgreSQL: row_number() over (порядок столбцов по col2)

Следующий набор результатов получен из запроса SQL с несколькими объединениями и объединением. SQL-запрос уже группирует строки по дате и игре. Мне нужен столбец, чтобы описать количество попыток игры, разбитых по столбцу даты. Username Game ID Date…
29 авг '14 в 06:07
0 ответов

Таинственная ошибка при совмещении функции опережения, функции второго окна и псевдонима столбца

Рассмотрим следующий запрос: select corpus_date as alias ,lead(word, 1) over (partition by corpus order by word_count desc) lead ,max(word_count) over (partition by corpus) max_word_count from [publicdata:samples.shakespeare] where corpus='othello' …
3 ответа

Функции Spark Window - диапазон между датами

У меня Spark SQL DataFrame с данными, и я пытаюсь получить все строки, предшествующие текущей строке в заданном диапазоне дат. Так, например, я хочу, чтобы все строки из 7 дней назад предшествовали данной строке. Я понял, что мне нужно использовать …
1 ответ

Плохая производительность с оконной функцией в потоковой работе

Я использую Spark 2.0.2, Kafka 0.10.1 и интеграцию spark-streaming-kafka-0-8. Я хочу сделать следующее: Я извлекаю функции в потоковом задании из соединений NetFlow и затем применяю записи к модели k-средних. Некоторые функции являются простыми, кот…
1 ответ

MSSQL - ошибка OVER, ROW_NUMBER() и ORDER BY

Я пытаюсь сделать запрос, который выводит список с данными компании и количеством Продуктов и Скидок каждой Компании и заказом по product_count. Также мне нужно ограничить вывод группами из 30 строк SELECT * FROM ( SELECT *, ( SELECT COUNT(*) FROM P…
08 июн '17 в 14:08
1 ответ

Выбор структуры управления Postgres IF

Вот сценарий. Я хотел бы вернуть ntiled набор результатов в зависимости от количества записей. Например: DO $BODY$ IF ( SELECT count(*) < 50 FROM ( SELECT * FROM ( SELECT col1, col2, col3 FROM v_my_view) AS cnt; ) THEN SELECT * FROM ( SELECT col1…
13 мар '14 в 21:08
2 ответа

Заданное время / интервал для расчета значения открытия / максимума / минимума / закрытия в каждой сгруппированной информации

Предположим, что необработанные данные: Timestamp High Low Volume 10:24.22345 100 99 10 10:24.23345 110 97 20 10:24.33455 97 89 40 10:25.33455 60 40 50 10:25.93455 40 20 60 При времени выборки 1 секунда выходные данные должны быть следующими (они сг…
1 ответ

SQL Server: строка за

У меня есть две таблицы: одна поддерживает активы, а другая - вспомогательные: Таблица 1: assethdr assetid 0000000002 0000000003 а также Таблица 2: assetdet assetsubid assetid 0000000001 0000000002 0000000002 0000000002 0000000003 0000000002 0000000…
14 янв '15 в 14:32
1 ответ

Агрегация скользящих окон SQL (без использования оконной функции)

Я ищу запрос, который может агрегировать данные за 21 день назад следующим образом: в моей таблице есть следующие столбцы: accountid, date, measure Для каждого аккаунта мне нужна дата суммирования (измерения) за предыдущие 21 день назад. Любая идея,…
0 ответов

Распознать максимальное движение в квазипеременных временных окнах

У меня есть таблица (track_t, Postgresql 9.5) временных меток и измерений скорости и расстояния от футболистов. Отметки времени начинаются до игры, примерно через 30 минут, и заканчиваются до 30 минут после окончания игры. У меня есть запрос, которы…
3 ответа

Аналитический подсчет по разделу с предложением ORDER BY и без него

Я не понимаю, почему при использовании ORDER BY оговорка в аналитическом COUNT функция. Используя простой пример: with req as (select 1 as n, 'A' as cls from dual union select 2 as n, 'A' as cls from dual) select req.*, count(*) over(partition by cl…
28 дек '16 в 15:06
1 ответ

Выберите последнюю запись метки времени после оконной операции для каждой группы данных с помощью Spark Scala

Я выполнил подсчет попыток (пользователь, приложение) за временной промежуток дня (86400). Я хочу извлечь строки с последней отметкой времени с помощью счетчика и удалить ненужные предыдущие счетчики. Убедитесь, что ваш ответ учитывает временное окн…
0 ответов

Как определить число Strahler на ориентированном графе для потоковой сети

Вопрос / пример / ожидаемые значения Мне нужно определить число Strahler или порядок потока Strahler для ориентированного графа, представляющего сеть потока. Я могу получать информацию вперед и назад, используя WITH RECURSIVE запросы, но, кажется, …
1 ответ

Oracle SQL - как разделить по row_number

У меня есть этот оператор выбора, где я хотел бы иметь возможность разделить по row_number(), который я только что определил в предыдущей строке. но я получаю "ORA-30483: оконные функции здесь не разрешены". Как я могу разделить по row_number?Если э…
06 апр '18 в 19:27
1 ответ

Сумма SQL по разделу BY Рассчитать% от группы

Может кто-нибудь сказать мне, почему ниже не скомпилировать? Я пытаюсь подсчитать, какой% транзакции с отметкой "M3" приходится на всю партию. Я думаю, что было бы достаточно легко, если бы была только одна партия, но иногда их будет несколько. Весь…
13 окт '16 в 14:39
0 ответов

Использование нескольких столбцов в оконных функциях dplyr?

Исходя из SQL, я ожидал бы, что смог сделать что-то вроде следующего в dplyr, это возможно? # R tbl %>% mutate(n = dense_rank(Name, Email)) -- SQL SELECT Name, Email, DENSE_RANK() OVER (ORDER BY Name, Email) AS n FROM tbl Также есть ли эквивалент…
19 янв '18 в 08:54
1 ответ

Найти последний разрыв между временными метками Unix

В настоящее время у меня есть две функции, которые должны возвращать время, когда устройство снова начало регистрироваться, время, когда предыдущая строка до него была более 60 секунд. Эти функции могут работать нормально, но я должен видеть, как он…
1 ответ

Инкрементный подсчет номеров строк для отдельных строк в выборке объединения

У меня есть выбор, который объединяет две таблицы, a а также bчерез таблицу соединений, ab, select a.*, b.* from a left join ab on a.id = ab.aid left join b on b.id = ab.bid; И это производит id | athing | id | bthing ----+----------+----+----------…
2 ответа

Обновить таблицу с оконной функцией

У меня есть таблица в Redshift с дублированной строкой, которую я хочу удалить, для этого я создал поданный идентификатор и хочу обновить его, чтобы удалить дублированные строки. Я пытаюсь выполнить этот запрос, но он не работает update mr_usage set…