Общие команды

  • \? — показать справку по всем мета-командам.
  • \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).