Работаем с данными и полями таблиц в PostgreSQL | OTUS

Работаем с данными и полями таблиц в PostgreSQL

Продолжаем нашу серию заметок о полезных командах в PostgreSQL. В этот раз поговорим о подсчёте числа строк в таблице, использовании транзакций, просмотре и завершении исполняемых запросов.

Подсчёт числа строк в таблице

Число строк в PostgreSQL вычисляется стандартной функцией count, причём использовать её можно с дополнительными условиями.

Вот как подсчитывается общее число строк в таблице:

SELECT count(*) FROM table;

А вот как можно подсчитать число строк, если указанное нами поле не содержит NULL:

SELECT count(col_name) FROM table;

Теперь подсчитаем число уникальных строк по указанному полю:

SELECT count(distinct col_name) FROM table;

Применение транзакций

Транзакция объединяет в одну операцию некую последовательность действий. Особенность транзакции заключается в том, что в случае возникновения ошибки при выполнении транзакции, в базе данных не сохранится ни один из результатов действий.

Начать транзакцию можно посредством команды BEGIN.

Если надо откатить операции, которые расположены после BEGIN, подойдёт команда ROLLBACK, если применить — команда COMMIT.

Просмотр и завершение исполняемых запросов

Если надо получить информацию о запросах, пригодится следующая команда:

SELECT pid, age(query_start, clock_timestamp()), usename, query
FROM pg_stat_activity
WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;

Если надо остановить определённый запрос, используйте следующую команду, применение которой предполагает указание id процесса (pid):

SELECT pg_cancel_backend(procpid);

Если надо остановить работу запроса, выполняем следующую команду:

SELECT pg_terminate_backend(procpid);

Вот и всё, возможно, вам также будут интересны следующие статьи: — «Работа с конфигурацией в PostgreSQL»; — «Безопасное изменение типа поля в PostgreSQL»; — «Полезные команды в PostgreSQL»; — «Поиск «потерянных» значений в PostgreSQL».

По материалам «15 Advanced PostgreSQL Commands with Examples» и «10 Most Useful PostgreSQL Commands with Examples».

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто