Tag Archives: PostgreSQL

SQL: выборка разреженных данных (не больше раза в час)

Допустим, мы сохраняем данные в базу раз в 10 минут. Нужно достать данные из базы, начинающиеся с определённого времени и не чаще одного раза за час. В качестве базы используется sqlite3, но идея реализуется так же для других SQL.

Подробное объяснение EXPLAIN в PostgreSQL

understanding_explain

PostgreSQL — генерирование повторяющихся значений для неупорядоченных данных

Была задача: есть некоторое количество заказов, которым оказались не назначены менеджеры, есть 3 менеджера, между которыми нужно распределить эти заказы равномерно. Легче всё сделать на php или python, но задача была сделать всё при помощи SQL-запроса без хранимых процедур и желательно одним запросом.

Postgresql-аналоги myslq-евской «ON DUPLICATE KEY UPDATE»

В mysql есть очень удобная конструкция

Это очень удобно тогда, когда нужно вставить только те данные, которых в таблице нет (при этом в апдейте указывается уже существующее значение поля). В postgresql такого, к сожалению, нет. Но подобное поведение можно сэмулировать несколькими способами. Два самых интересных:

Как сдампить базу данных PostgreSql в локальную базу через командную строку в Windows

PostgreSQL EXPLAIN

При работе с MySql’овским EXPLAIN’ОМ всё просто (а может просто привычно). Postgres предоставляет больше информации, но с ним сложнее разобраться. Далее — вольный перевод статьи про PostgreSQL EXPLAIN (ссылка на оригинал в конце статьи).

Генерирование данных в PostgreSQL

Задача: Рекурсивно поднимаем статистику по количеству аккаунтов на указанную дату. При этом у аккаунта есть только период с-по. Основная задача — сгенерировать даты.