Я пытаюсь запустить API-вызов bigquery, используя строку запроса (прикрепленную к коду) из appscript; Запрос отлично работает в пользовательском интерфейсе bigquery.
Я безуспешно пробовал следующее:
1. включить скобки в orders.creation_date в строке запроса
2. заменить заказы фактической таблицей таблицы, т.е. [мой-проект:theservices.theservice_order_item]
/**
* Runs a BigQuery query and logs the results in a spreadsheet.
*/
function runQuery() {
var projectId = 'my-project';
var request = {
query:
"SELECT extract(date from orders.creation_date) as the_date \n FROM [my-project:theservices.theservice_order_item] AS orders LIMIT 10;"
};
};
Вот ошибка, которую я получаю:
Вызов API к bigquery.jobs.query завершился с ошибкой: Обнаружено ""FROM" "из "" в строке 1, столбце 22. Ожидалось: ")" ... (строка 23, файл "Код")
По-прежнему возникает следующая ошибка: API-вызов bigquery.jobs.query не выполнен с ошибкой: обнаружен ""FROM" "из "" в строке 1, столбце 22. Ожидалось: ")"...
Ok. Этот запрос не выполняется в пользовательском интерфейсе. Он представляет собой смесь #standardSQL и #legacySQL. «Запрос отлично работает в пользовательском интерфейсе bigquery» — нет.
да, в веб-интерфейсе я использую следующий код, который отлично работает: ВЫБЕРИТЕ ИЗВЛЕЧЕНИЕ (дата ИЗ заказов. дата создания) ИЗ data-analytics-related.theservices.theservice_order_item
КАК заказы
Я использовал литералы sting для этого data-analytics-related.theservices.theservice_order_item
Цитирую Оператор App Script BigQuery Standard SQL вставки или обновления:
You need to set the useLegacySql flag/parameter to false, to indicate that you want to use standard SQL, like so:
var job = {
configuration: {
query: {
query: 'SELECT ....',
useLegacySql: false
}
Кроме того, когда таблица выглядит так, это #legacySQL:
FROM [my-project:theservices.theservice_order_item]
В #standardSQL таблица должна быть заключена в тильду '`' и иметь '.' между названием проекта и набором данных:
FROM `my-project.theservices.theservice_order_item`
вставка useLegacySql: false сработала.... Большое спасибо за помощь!
что произойдет, если вы удалите \n?