Запитання з тегом «window-functions»

Функція, яка розділяє набір результатів і обчислює щось у цьому розділі без згорнення даних у цьому розділі.

6
Підсумкова сума сукупності даних за допомогою функцій вікна
Мені потрібно обчислити постійну суму за діапазон дат. Для ілюстрації, використовуючи зразок бази даних AdventureWorks , наступний гіпотетичний синтаксис зробив саме те, що мені потрібно: SELECT TH.ProductID, TH.TransactionDate, TH.ActualCost, RollingSum45 = SUM(TH.ActualCost) OVER ( PARTITION BY TH.ProductID ORDER BY TH.TransactionDate RANGE BETWEEN INTERVAL 45 DAY PRECEDING AND CURRENT ROW) FROM …

2
MySQL та віконні функції
Здається, що MySQLне підтримує віконні функції. Наприклад, простий: COUNT(*) OVER() AS cntне працює. Я не впевнений, що це стосується і комерційної версії (я припускаю, що версія спільноти обмежена підмножиною). Якщо ні, то як обходиться ця відсутність функції?

4
Обмежте результати першими двома рядками рейтингу
У SQL Server 2008 я використовую RANK() OVER (PARTITION BY Col2 ORDER BY Col3 DESC)для повернення набору даних із RANK. Але у мене є сотні записів для кожного розділу, тому я отримаю значення з рангів 1, 2, 3 ...... 999. Але я хочу лише до 2 RANKsу кожному PARTITION. Приклад: …

4
Використання DISTINCT у функції вікна за допомогою OVER
Я намагаюся перенести запит з Oracle на SQL Server 2014. Ось мій запит, який чудово працює в Oracle: select count(distinct A) over (partition by B) / count(*) over() as A_B from MyTable Ось помилка, яку я отримав після спроби запустити цей запит у SQL Server 2014. Use of DISTINCT is …

6
Знайдіть “n” послідовних вільних номерів із таблиці
У мене є таблиця з такими номерами (статус або БЕЗКОШТОВНО, або ЗНАЧЕНО) статус номера id_set ----------------------- 1 000001 ВИЗНАЧЕНО 1 000002 БЕЗКОШТОВНО 1 000003 ВИЗНАЧЕНО 1 000004 БЕЗКОШТОВНО 1 000005 БЕЗКОШТОВНО 1 000006 ВИЗНАЧЕНО 1 000007 ВИЗНАЧЕНО 1 000008 БЕЗКОШТОВНО 1 000009 БЕЗКОШТОВНО 1 000010 БЕЗКОШТОВНО 1 000011 ВИЗНАЧЕНО 1 …

1
Запуск у попередньому рядку
Мені потрібна допомога щодо функцій вікон. Я знаю, що ви можете обчислити суму у вікні та загальну кількість у вікні. Але чи можна обчислити попередній загальний обсяг, тобто загальний запуск, не враховуючи поточний рядок? Я припускаю, що вам потрібно буде використовувати аргумент ROWабо RANGEЯ знаю, що є CURRENT ROWваріант, але …

7
Групування або вікно
У мене є ситуація, на яку я думаю, що її можна вирішити за допомогою віконної функції, але я не впевнений. Уявіть наступну таблицю CREATE TABLE tmp ( date timestamp, id_type integer ) ; INSERT INTO tmp ( date, id_type ) VALUES ( '2017-01-10 07:19:21.0', 3 ), ( '2017-01-10 07:19:22.0', 3 …


1
Об'єднайте дві таблиці подій в одну шкалу часу
Дано дві таблиці: CREATE TABLE foo (ts timestamp, foo text); CREATE TABLE bar (ts timestamp, bar text); Я хотів би написати запит , який повертає значення ts, fooі barщо являє собою єдине уявлення самих останніх значень. Іншими словами, якщо вони fooмістяться: ts | foo -------- 1 | A 7 | …

2
Виберіть найдовшу безперервну послідовність
Я намагаюся побудувати запит у PostgreSQL 9.0, який отримує найдовшу послідовність суцільних рядків для конкретного стовпця. Розглянемо наступну таблицю: lap_id (serial), lap_no (int), car_type (enum), race_id (int FK) Де lap_noунікальне для кожного (race_id, car_type). Я хотів би, щоб запит створив найдовшу послідовність для даної задачі race_idі car_type, таким чином, він …

2
Використання функції вікна для перенесення першого ненульового значення в розділ
Розгляньте таблицю, яка записує відвідування create table visits ( person varchar(10), ts timestamp, somevalue varchar(10) ) Розглянемо цей приклад даних (часова марка спрощена як лічильник) ts| person | somevalue ------------------------- 1 | bob |null 2 | bob |null 3 | jim |null 4 | bob | A 5 | bob …

1
Чому агрегат вікон пакетного режиму переповнює арифметичні показники?
Наступний запит виконує вікно SUMнад таблицею стовпців стовпців 1500 total rows, кожен з яких має значення 0 або 1, і він переповнює INTтип даних. Чому це відбувається? SELECT a, p, s, v, m, n, SUM(CASE WHEN n IS NULL THEN 0 ELSE 1 END) OVER (PARTITION BY s, v, a …

1
Як отримати сукупність віконної функції в Postgres?
У мене є таблиця, що містить два стовпчики перестановок / комбінацій цілих масивів та третій стовпець, що містить значення, наприклад: CREATE TABLE foo ( perm integer[] NOT NULL, combo integer[] NOT NULL, value numeric NOT NULL DEFAULT 0 ); INSERT INTO foo VALUES ( '{3,1,2}', '{1,2,3}', '1.1400' ), ( '{3,1,2}', …

4
Як я можу написати віконний запит, який підсумовує стовпець, щоб створити дискретні відра?
У мене є таблиця, яка містить стовпець десяткових значень, такий як цей: id value size -- ----- ---- 1 100 .02 2 99 .38 3 98 .13 4 97 .35 5 96 .15 6 95 .57 7 94 .25 8 93 .15 Що мені потрібно зробити, це описати трохи важко, …

1
Порівняння продуктивності між використанням функції Join і Window для отримання значень відведення та відставання
У мене є таблиця з 20М рядків, а кожен рядок має 3 колонки: time, id, і value. Для кожного idі time, є статус valueдля статусу. Я хочу знати величини відведення та відставання певного timeдля конкретного id. Для цього я використав два методи. Один метод - це використання join, а інший …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.