Size: a a a

pgsql – PostgreSQL

2021 June 27

AU

A U in pgsql – PostgreSQL
И если это таки потом в оконные функции не засунется. Оконные агрегаты, помоему, filter ни как не поддерживают.
источник

R

Radist in pgsql – PostgreSQL
В смысле, count(*) filter (where expr) over (partition by ...)? Вполне работает на 12м и мне кажется, что на 9.6 не было таких проблем до того, как обновились.
источник

E

Eugen in pgsql – PostgreSQL
Подскажите плиз, а можно как-то получить № изменения?
https://stackoverflow.com/q/68146876/4632019

т.е. каждый раз, когда в следующей строке другое значение - делать инкремент
источник

AK

Alexandr Khan in pgsql – PostgreSQL
Да оконная уже и не нужна, я просто с ними сейчас разбираюсь, так везде пихаю где можно)
Все получилось, спасибо большое ребята!
источник

R

Radist in pgsql – PostgreSQL
подзапрос с lead(current) over (...) as previous, а снаружи - count(*) filter (where previous <> current) over (...). Только надо будет что-то сделать со стартовым значением и в over-е прописать одинаковый order by
источник

AU

A U in pgsql – PostgreSQL
Да? Ну прикольно тогда. Надо будет проверить с утра, в то мне казалось что такая конструкция не работала.
источник

E

Eugen in pgsql – PostgreSQL
возможно я не правильно спросил.
Мне нужно найти не количество изменений, а № изменения
источник

R

Radist in pgsql – PostgreSQL
количество нарастающим итогом как раз и станет номером. Но чтобы это работало, у вас обязательно должна быть колонка с порядковым номером или альтернативный способ сортировки. Иначе задача в SQL просто не решается
источник

E

Eugen in pgsql – PostgreSQL
да, сортировка есть.
Хорошо. Спасибо за идею. Буду пробовать.
А подсчёт количества с нарастающим итого не будет тормозить?
источник

R

Radist in pgsql – PostgreSQL
тормозить - это очень растяжимое понятие. Я не знаю ваших требований и имеющегося железа. В любом случае, у вас там будет в плане 2 последовательные операции вычисления оконной функции.
источник

E

Eugen in pgsql – PostgreSQL
ок
источник

AK

Alexandr Khan in pgsql – PostgreSQL
Еще такой вопрос, теперь я вычисляю процент каждого outcome относительно общего количества, 2 знака после запятой, и получается в сумме где-то 99.9%, где-то 100.1%, как это можно отрегулировать (не убирать "лишние" знаки не вариант) ?

SELECT ethnicity, total,
ROUND(arrest/total::NUMERIC * 100, 2) as arrest_percent,
ROUND(no_action/total::NUMERIC * 100, 2) as no_action_percent,
ROUND(other/total::NUMERIC * 100, 2) as other_percent
FROM cte
источник

So

Support of Project in pgsql – PostgreSQL
Доброго времени суток! Подскажите, как в терминале узнать типы полей таблицы?
источник

mm

miruzzy miruzzy in pgsql – PostgreSQL
other/total оберни в скобки.
Сейчас вы приравниваете к нумерик только второй аргумент
источник

mm

miruzzy miruzzy in pgsql – PostgreSQL
Ну и точно так-же остальные выражения
источник

RB

Rustam Baekenov in pgsql – PostgreSQL
\d tablename
источник

So

Support of Project in pgsql – PostgreSQL
Спасибо!
источник

ch

central hardware in pgsql – PostgreSQL
Или \d+
источник

So

Support of Project in pgsql – PostgreSQL
Спасибо, видно все сразу)
источник

So

Support of Project in pgsql – PostgreSQL
Подскажите, как быстро проверить есть ли поле в таблице с нужным значением? Использую psycopg2.
источник