Size: a a a

pgsql – PostgreSQL

2020 May 21

S

Sergey in pgsql – PostgreSQL
А как? есть готовые гайды?
источник

АГ

Алексей Горячев... in pgsql – PostgreSQL
Sergey
А как? есть готовые гайды?
источник

I

I C in pgsql – PostgreSQL
при старте postgres базы выдает ошибку:
could not access file "pg_cron": No such file or directory
но pg_cron установлен.
подскажите в чем проблема
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
Всем привет!
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Roman Usachev
select s::date,
              (select count(*) FROM ul_main WHERE register_date between s and s + interval '1 day') registrations
from
   generate_series('2020-01-01','2020-05-01', interval '1 day') s
   ORDER BY s
(Просто заметил в логах чата).
Для Вас и @AntsiferovMaxim :
Правильно генерация именно дат (а timestamptz)  делается вот так:
SELECT g.d::date
 FROM generate_series('2020-01-01'::timestamp, '2020-05-01'::timestamp, '1 day') AS g(d)

Хотя ошибка тут крайне маловероятная, лучше всё-таки использовать и распространять правильный вариант, IMHO.
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
А тут можно задавать вопросы по запросам? :)
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
‌‎ ‌‎
А тут можно задавать вопросы по запросам? :)
В принципе, да.
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
Вообще хотел уточнить один момент, может быть кто-нибудь сможет подсказать. Занимаюсь анализом данных, поэтому решил погрузиться в sql, чтобы прокачать навыки работы с БД. Изучил на datacamp и джоины, и всякие union'ы и подзапросы с оконками. Но я никак не могу понять, в каких случаях лучше применять подзапрос, а в каких лучше обойтись джоином и т.д.
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
Неужели нет каких-то негласных правил, которые говорили бы, что в таких случаях лучше идти через джоин, а в таких через оконку и т.д.?
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
Может быть есть какие-то нормальные материалы на эту тему, которые можно было бы изучить?
источник

‌‌

‌‎ ‌‎ in pgsql – PostgreSQL
Вообще получается, что в голове каша и когда видишь задачку вроде: Find the number of Employees of each role in the studio

ты не знаешь, как её решить, потому что в голове бардак
источник

S

Sergey in pgsql – PostgreSQL
Прежде, чем решать, будет-ли запрос с джоином или подзапросом, желательно разобраться с кашей в голове.
источник

S

Sergey in pgsql – PostgreSQL
Те, выяснить, каким образом можно решить данную задачу вообще.
источник

AB

Alexey Bulgakov in pgsql – PostgreSQL
‌‎ ‌‎
Неужели нет каких-то негласных правил, которые говорили бы, что в таких случаях лучше идти через джоин, а в таких через оконку и т.д.?
есть оптимизатор, который может переделать план твоего запроса по-другому. и этот оптимизатор довольно часто меняется
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
При альтернативе “join vs подзапрос” нужно выбирать джойн, потому что подзапрос - зачастую препятсвие для оптимизатора для того, чтобы построить более выгодный план и выполнить запрос быстрее.
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Про альтернативу “join vs window functions” я не слышал, все же у них разное предназначение.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Denis Girko ☕️
Про альтернативу “join vs window functions” я не слышал, все же у них разное предназначение.
По идее, любой возможный запрос с window functions на корректно нормализованной базе можно написать без них (как раз с помощью JOIN, в том числе), "классически". Т.е. именно в плане возможностей (написать то, что без них было бы невозможно) window functions не добавляют почти ничего.

И мне лично это мешает иногда — в тех случаях, когда кажется, что какой-то запрос можно написать с их помощью, а потом  думаешь / пробуешь — нет, нельзя (и вот они JOIN-ы). ;)
источник

S

Sergey Grachev in pgsql – PostgreSQL
Victor Yegorov
а сколько памяти и ядер всего, какой размер shared_buffers и work_mem, сколько max_connections?
16 памяти, 8 ядер. shared_buffers 6gb, work_mem 4mb, max_connections 300
источник

S

Sergey Grachev in pgsql – PostgreSQL
просто хочу понять, это нормально или нет что 1 очень тяжелый селект выжирает диск на read на 100%?
источник

SG

Sergey Gr in pgsql – PostgreSQL
Sergey Grachev
просто хочу понять, это нормально или нет что 1 очень тяжелый селект выжирает диск на read на 100%?
Почему бы и нет? Если данных нет в shared_buffers и в page cache операционки, то поднимать их в память используя диск на 100% гораздо быстрее чем использую его на 5-10%
источник