Size: a a a

2020 September 30

G

Gopneg in sql_ninja
Я комп уже вырубил, бухайте пока
источник
2020 October 01

ДT

Дмитрий Texnix... in sql_ninja
а в постгрес можно так :
where tablename='V016' and activ
источник

ДT

Дмитрий Texnix... in sql_ninja
тобишь есть тип булеан, и его даже не надо сравнивать с труе.
источник

MC

Max Chistyakov in sql_ninja
это я не понимаю, какая метрика что означает, или описание криво сделано?
https://github.com/prometheus-community/windows_exporter/blob/master/docs/collector.mssql.md
источник

ДT

Дмитрий Texnix... in sql_ninja
последняя десятка вроде верно показывает загрузку памяти, скуэль экспресс никогда не превышает 1 гиг
источник

AS

Aleksey S. in sql_ninja
У меня MS SQL и есть таблица 1, где ВСЕ даты подряд
И таблица 2, где данные есть не за все даты - например, курсы валют, где выходные пропущены

Как эффективнее и проще всего выборку сделать, чтобы каждой записи таблицы 1 была сопоставлена одна запись таблицы 2 с датой равной или меньшей?

Я пока через CURSOR и LAG сделал - но кажется очень странным...
источник

DB

Dmitriy Belkin in sql_ninja
Aleksey S.
У меня MS SQL и есть таблица 1, где ВСЕ даты подряд
И таблица 2, где данные есть не за все даты - например, курсы валют, где выходные пропущены

Как эффективнее и проще всего выборку сделать, чтобы каждой записи таблицы 1 была сопоставлена одна запись таблицы 2 с датой равной или меньшей?

Я пока через CURSOR и LAG сделал - но кажется очень странным...
OUTER APPLY (SELECT TOP 1 .....)
источник

AS

Aleksey S. in sql_ninja
хм хм
для TOP 1 надо указывать порядок же
значит ORDER BY надо - а он там допустим будет?

я уже куда-то в оконные функции залез

спасибо, попробую
источник

MC

Max Chistyakov in sql_ninja
Aleksey S.
хм хм
для TOP 1 надо указывать порядок же
значит ORDER BY надо - а он там допустим будет?

я уже куда-то в оконные функции залез

спасибо, попробую
ORDER BY  допустим будет
источник

AS

Aleksey S. in sql_ninja
гы, оно работает... только интересно, быстро ли такой фокус на миллионе записей пройдет
источник

AS

Aleksey S. in sql_ninja
аоуоуа... я понял, почему у меня тогда курсор был, потому что валют разных много - и по дате надо вычислять для конкретной валюты

Это гениально! Просто календарь перемножил с курсами...

WITH all_courses AS (
SELECT
 *
FROM [nsi].[currency]
WHERE CharCode IN ('USD','PLN')
)
, all_currency_codes AS (
SELECT
 DISTINCT
 CharCode
FROM all_courses
)
SELECT
all_c.CharCode
,[cal_date]
,cur.[Value] AS real_value
,cur2.[Value] AS counted_value
FROM [nsi].[ru_calendar] cal
LEFT JOIN all_currency_codes all_c ON 1 = 1
LEFT JOIN all_courses cur ON cur.[date] = cal.cal_date AND cur.CharCode = all_c.CharCode
OUTER APPLY (SELECT TOP 1
   [Value]
            FROM all_courses c2 WHERE c2.[date] <= cal.cal_date AND c2.CharCode = all_c.CharCode
            ORDER BY [date] DESC) cur2
WHERE
[cal_date] >= '2020-09-20'
AND [cal_date] <= '2020-10-01'
ORDER BY 1,2
источник

N

NaZaR in sql_ninja
Коллеги, добрый день! Не мог бы кто-нибудь подсказать как написать запрос, чтобы он выдавал на каждый отчётный месяц среднюю стату за период 3х месяцев?
источник

У

Уруруборос Иванович... in sql_ninja
NaZaR
Коллеги, добрый день! Не мог бы кто-нибудь подсказать как написать запрос, чтобы он выдавал на каждый отчётный месяц среднюю стату за период 3х месяцев?
Погугли про аналитические функции и их окна
источник

У

Уруруборос Иванович... in sql_ninja
Там есть типа взять среднее среди элементов и задаёшь окно типа три предыдущих
источник

N

NaZaR in sql_ninja
ну это получается оконные функции? гугл выдает
источник

N

NaZaR in sql_ninja
упорно
источник

У

Уруруборос Иванович... in sql_ninja
NaZaR
ну это получается оконные функции? гугл выдает
Да
источник

У

Уруруборос Иванович... in sql_ninja
Там avg есть
источник

N

NaZaR in sql_ninja
спасибо за наводку, пойду смотреть
источник

К

Какой-то Хмырь... in sql_ninja
источник