Я пытаюсь преобразовать запрос с помощью инструмента командной строки BigQuery, чтобы вместо этого сделать это с помощью Go, но я не нахожу, как правильно настроить запрос. У меня есть команда устанавливает формат CSV, максимальное количество строк для вывода, максимальный счет байтов и идентификатор проекта;затем запускает стандартный запрос SQL и записывает вывод в файл CSV, удаляя заголовки и пустые строки вверху.
Ниже приведена команда, которая у меня работает правильно с использованием инструмента командной строки:
bq query --format csv \
--max_rows <max_row_int> --maximum_bytes_billed <max_bytes_billed_int> \
--project_id <project_id> "#standardSQL
<standard_sql_statment>
" \
| tail -n +3 >results.csv
Я могу видеть из документов, чтобы выполнить запрос в Go. Мне нужно создать клиент / соединениеи тогда я смогу выполнить запрос, как показано ниже:
ctx := context.Background()
client, error := bigquery.NewClient(ctx, "<project_id_string>")
if err != nil {
return nil, err
}
q := client.Query(<standard_sql_query>)
Как я могу установить флаги конфигурации, которые у меня есть выше, в моем коде инструмента командной строки в моем коде Go?