Список зарезервированных слов для унаследованного синтаксиса Google BigQuery
Я нашел список зарезервированных ключевых слов для Стандартного SQL, в Стандартном SQL Лексическая структура - Лексическая структура - Зарезервированные ключевые слова.
Но я не могу найти эквивалентный список для устаревшего SQL, хотя есть ссылка на него в устаревших функциях и операторах SQL - синтаксис запроса - предложение SELECT:
Вы можете использовать квадратные скобки для экранирования зарезервированных слов, чтобы вы могли использовать их в качестве имени поля и псевдонимов. Например, если у вас есть столбец с именем "prefix", который является зарезервированным словом в синтаксисе BigQuery, запросы, ссылающиеся на это поле, завершатся с ошибочными сообщениями об ошибках, если вы не экранируете его в квадратных скобках.
Я знаю, что некоторые ключевые слова разные; например, Legacy SQL имеет FLATTEN
который я предполагаю зарезервировано, а стандарт SQL - нет.
Любые указатели помогут.
1 ответ
Специальной документации Google, в которой указан список зарезервированных слов для устаревшего сервиса BigQuery, не существует. Самая точная ссылка, которую я нашел, - это различия в синтаксисе, которые указывают на методы escape-зарезервированных ключевых слов, которые вы можете использовать в стандартной и прежней версиях, как вы уже упоминали ранее.
Исходя из этого, я думаю, что текущий обходной путь заключается в использовании доступного списка зарезервированных ключевых слов в качестве ссылки и экранировании слов, помеченных как зарезервированные при использовании BigQuery. Кроме того, вы можете использовать кнопку Отправить отзыв, расположенную в нижнем левом и верхнем правом углах общедоступной документации Legacy SQL, чтобы запросить добавление списка ключевых слов для Legacy SQL.