Получить настройки запроса
Формирует структуру описания запроса
- Параметры
- Расширенный вызов ?
Функция ПолучитьНастройкиЗапроса(Знач Текст, Знач БазаДанных = Неопределено, Знач IDЗапроса = Неопределено, Знач Данные = Неопределено, Знач ФорматОтвета = "JSON", Знач ВнешниеТаблицы = Неопределено, Знач Настройки = Неопределено) Экспорт
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|---|---|---|---|---|
| Текст | --query | Строка | ✔ | Текст запроса |
| БазаДанных | --db | Строка | ✖ | База данных |
| IDЗапроса | --id | Строка | ✖ | Уникальный ID запроса, если необходимо |
| Данные | --data | Произвольный | ✖ | Строка, файл или двоичные данные запроса |
| ФорматОтвета | --format | Строка | ✖ | Формат получения ответа: JSON, CSV, TSV и пр. |
| ВнешниеТаблицы | --ext | Массив Из Структура | ✖ | Информация о внешних таблицах. См. ПолучитьСтруктуруВнешнейТаблицы |
| Настройки | --settings | Соответствие Из КлючИЗначение | ✖ | Дополнительные query параметры запроса |
Возвращаемое значение
Структура Из КлючИЗначение - Структура запроса
| Параметр | Описание |
|---|---|
| dontwait | Создает фоновое задание и возвращает его данные (только для 1С и OneScript) |
подсказка
При использовании транспорта http нельзя одновременно использовать Данные и Внешние таблицы
Тело ответа может быть возвращено в виде коллекции (для JSON) или в виде двоичных данных (для остальных форматов). В CLI версии двоичные данные будут представлены в вид е Base64 строки
Пример использования для 1С:Предприятие/OneScript
// Минимальный запрос
ТекстЗапроса = "SELECT 1";
Результат = OPI_ClickHouse.ПолучитьНастройкиЗапроса(ТекстЗапроса);
// Полный запрос
IDЗапроса = Строка(Новый УникальныйИдентификатор());
Данные = Новый Структура("meta,data", Новый Массив, Новый Массив);
БазаДанных = "default";
ФорматОтвета = "CSV";
ДопНастройки = Новый Соответствие;
ДопНастройки.Вставить("max_threads", "4");
СтруктураКолонок = Новый Структура("id,name", "UInt64", "String");
ВнешняяТаблица = OPI_ClickHouse.ПолучитьСтруктуруВнешнейТаблицы("ext", СтруктураКолонок);
МассивТаблиц = Новый Массив;
МассивТаблиц.Добавить(ВнешняяТаблица);
Результат = OPI_ClickHouse.ПолучитьНастройкиЗапроса(ТекстЗапроса
, БазаДанных
, IDЗапроса
, Данные
, ФорматОтвета
, МассивТаблиц
, ДопНастройки);
- Bash
- CMD/Bat
oint clickhouse ПолучитьНастройкиЗапроса \
--query "SELECT * FROM events_stream_test ORDER BY id" \
--format "JSON"
oint clickhouse ПолучитьНастройкиЗапроса ^
--query "SELECT * FROM events_stream_test ORDER BY id" ^
--format "JSON"
Результат
{
"query": "SELECT 1",
"database": "default",
"id": "91ad0c48-7ecf-499a-9914-f7dd31248cea",
"data": "/tmp/er14n3pf.y0c.json",
"format": "CSV",
"external_tables": [
{
"name": "ext",
"cols": {
"id": "UInt64",
"name": "String"
}
}
],
"settings": {
"max_threads": "4"
}
}