Выполнение запроса

С помощью подкоманды table query execute вы можете выполнять единичные ad hoc запросы конкретных типов для тестирования и диагностики.

Общий вид команды:

ydb [global options...] table query execute [options...]

Посмотрите описание команды выполнения YQL-запроса:

ydb table query execute --help

Параметры подкоманды

Имя Описание
--timeout Время, в течение которого должна быть выполнена операция на сервере.
-t, --type Тип запроса.
Возможные значения:
  • data — запрос над данными;
  • scheme — запрос над схемой данных;
  • scanскан-запрос.
Значение по умолчанию — data.
--stats Режим сбора статистики.
Возможные значения:
  • none — не собирать;
  • basic — собирать по основным событиям;
  • full — собирать по всем событиям.
Значение по умолчанию — none.
-s Включить сбор статистики в режиме basic.
--tx-mode Указать режим транзакций (для запросов типа data).
Возможные значения:
  • serializable-rw — результат успешно выполненных параллельных транзакций эквивалентен определенному последовательному порядку их выполнения;
  • online-ro — каждое из чтений в транзакции читает последние на момент своего выполнения данные;
  • stale-ro — чтения данных в транзакции возвращают результаты с возможным отставанием от актуальных (доли секунды).
Значение по умолчанию — serializable-rw.
-q, --query Текст YQL-запроса для выполнения.
-f, --file Путь к файлу с текстом YQL-запроса для выполнения.
-p, --param Параметры запроса (для запросов над данными и скан-запросах).
Может быть указано несколько параметров. Для изменения формата ввода используйте параметр подкоманды --input-format.
--input-format Формат ввода.
Возможные значения:
  • json-unicode — ввод в формате JSON, бинарные строки закодированы в Юникод;
  • json-base64 — ввод в формате JSON, бинарные строки закодированы в Base64.
--format Формат вывода.
Значение по умолчанию — pretty.
Возможные значения:
  • pretty — человекочитаемый формат;
  • json-unicode — вывод в формате JSON, бинарные строки закодированы в Юникод, каждая строка JSON выводится в отдельной строке;
  • json-unicode-array — вывод в формате JSON, бинарные строки закодированы в Юникод, результат выводится в виде массива строк JSON, каждая строка JSON выводится в отдельной строке;
  • json-base64 — вывод в формате JSON, бинарные строки закодированы в Base64, каждая строка JSON выводится в отдельной строке;
  • json-base64-array — вывод в формате JSON, бинарные строки закодированы в Base64, результат выводится в виде массива строк JSON, каждая строка JSON выводится в отдельной строке.

Примеры

Примечание

В примерах используется профиль db1, подробнее смотрите в Создание профиля соединения.

Выполните data-запрос к данным:

ydb table query execute \
  --query "SELECT season_id, episode_id, title \
  FROM episodes \
  WHERE series_id = 1 AND season_id > 1 \
  ORDER BY season_id, episode_id \
  LIMIT 3"

Результат:

┌───────────┬────────────┬──────────────────────────────┐
| season_id | episode_id | title                        |
├───────────┼────────────┼──────────────────────────────┤
| 2         | 1          | "The Work Outing"            |
├───────────┼────────────┼──────────────────────────────┤
| 2         | 2          | "Return of the Golden Child" |
├───────────┼────────────┼──────────────────────────────┤
| 2         | 3          | "Moss and the German"        |
└───────────┴────────────┴──────────────────────────────┘