Общие команды
\? — показать справку по всем мета-командам.
\h [команда] — справка по синтаксису SQL-команды (например, \h CREATE TABLE).
\q — выйти из psql.
Подключение и переключение
- ==
\c== или \connect [база] [пользователь] [хост] [порт] — подключиться к другой базе данных или от имени другого пользователя.
- ==
\l== или \list — список всех баз данных в кластере.
- ==
\du== — список ролей (пользователей и групп).
- ==
\dn== — список схем.
Просмотр объектов базы данных
- ==
\dt== — список таблиц в текущей схеме.
\dt+ — расширенный список таблиц (с описанием, размером и т.д.).
- ==
\d таблица== — описание структуры таблицы (столбцы, типы, ограничения).
- ==
\di== — список индексов.
- ==
\dv== — список представлений (views).
- ==
\df== — список функций.
- ==
\ds== — список последовательностей (sequences).
Выполнение и история
\e или \edit — открыть текущий запрос в редакторе (или создать новый).
\g — выполнить текущий буфер запроса (аналог ;).
\s — показать историю команд.
\s файл — сохранить историю в файл.
\i файл.sql — выполнить SQL-скрипт из файла.
\o файл — перенаправить вывод запросов в файл.
\o — отключить перенаправление вывода.
Настройка вывода и поведения
\x — включить/выключить расширенный (вертикальный) формат вывода (очень удобно для широких таблиц).
\pset [опция] [значение] — настроить параметры вывода:
\pset null 'NULL' — как отображать NULL.
\pset pager off — отключить пейджер.
\pset tuples_only on — показывать только данные, без заголовков и подвала.
\t — переключить режим “только кортежи” (аналог tuples_only).
\timing — включить/выключить отображение времени выполнения каждого запроса.
Переменные и окружение
\set имя значение — установить переменную psql (например, \set myvar 'hello').
\echo :myvar — вывести значение переменной.
\unset имя — удалить переменную.
\! команда — выполнить команду оболочки (например, \! ls -l).