Почему в Big Query SQL мы должны ставить LIMIT после WHERE и после него ставить точку с запятой?

Если после LIMIT нет точки с запятой, это не работает!

Я пытался понять, почему WHERE не нужна точка с запятой. Интересно, это одно и то же правило для всех программ SQL или только для Big Query? Я хотел бы понять, есть ли другие слова, которым нужна точка с запятой, например LIMIT.

Предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.

Community 06.05.2024 08:54
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
2
1
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В BigQuery, как и во многих диалектах SQL, точка с запятой используется для отделения операторов друг от друга, создавая «последовательность» операторов, если они используются правильно.

Например, если вы попытаетесь запустить:

SELECT * FROM `my_dataset.my_table`
SELECT * FROM `my_dataset.my_table2`

Он не будет работать.

Однако, если вы попытаетесь запустить:

SELECT * FROM `my_dataset.my_table`;
SELECT * FROM `my_dataset.my_table2`;

Это будет работать.

Это связано с тем, что BigQuery точно понимает, где заканчивается каждый оператор и где начинается следующий, благодаря точкам с запятой.

Точка с запятой НЕ связана конкретно с предложением «LIMIT». Я предполагаю, что на одной странице запроса было несколько операторов, и когда вы указали точку с запятой, она была отформатирована правильно. Как только вы удалили точку с запятой, BigQuery потерялся при переводе вашего кода.

Если вам нужен конкретный ответ на ваш сценарий, вы можете предоставить нам код, который вы пытались запустить.

Дополнительную информацию о точке с запятой в BigQuery можно найти здесь: https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical#termination_semicolons

Обратите внимание, что они предоставили свой код, но 1) в виде изображения и 2) в ответе, а не в части своего вопроса. Также просьба не отвечать на вопросы не по теме.

David Makogon 07.05.2024 17:09

Другие вопросы по теме