[英]Syntax error: Expected "(" or "," or keyword SELECT but got end of script
我只是按照課程中的查詢進行操作,但我不知道為什么會收到錯誤消息。
語法錯誤:應為“(”或“,”或關鍵字 SELECT 但在 [13:6] 處結束腳本
With
longest_used_bike AS (
SELECT
Bikeid,
SUM(duration_minutes) AS trip_duration
FROM
bigquery-public-data.austin_bikeshare.bikeshare_trips
GROUP BY
Bikeid
ORDER BY
Trip_duration DESC
LIMIT 1
)
為什么我會收到此錯誤?
您收到此錯誤是因為 CTE(即WITH
語句)只是查詢的一部分。 它后面需要跟另一個語句,通常是SELECT
。
也許您打算:
With longest_used_bike AS (
SELECT Bikeid, SUM(duration_minutes) AS trip_duration
FROM `bigquery-public-data.austin_bikeshare.bikeshare_trips`
GROUP BY Bikeid
ORDER BY Trip_duration DESC
LIMIT 1
)
select *
from longest_used_bike;
我還假設您使用的是 BigQuery。 表名需要用反引號括起來。
我在課程中也遇到了這個問題。
從課程中,寫下形象的代碼。 “如果你現在運行它,它會返回一個錯誤,因為你還沒有編寫任何查詢。現在,是時候編寫一個查詢來識別這輛自行車的出發站了。”
要解決此問題,請添加另一個 SELECT 語句。
我遇到過同樣的問題。 我了解到 CTE(WITH 子句)不能作為獨立的代碼段工作——它是更大語句的一部分。 要完成您的代碼,您必須添加 SELECT 語句。
這是我認為會發生的事情:
WITH longest_used_bike AS (
SELECT
bikeid,
SUM(duration_minutes) AS trip_duration
FROM `bigquery-public-data.austin_bikeshare.bikeshare_trips`
GROUP BY
bikeid
ORDER BY trip_duration DESC
)
/* add your SELECT statement here */
SELECT *
FROM longest_used_bike;
/* or whatever else */
我在今天的課程中遇到了同樣的問題。 通過在末尾添加 SELECT 語句將解決此問題。 在這種情況下,我們只是創建了一個臨時表,而沒有提供任何查詢來使用它,這就是我們收到此錯誤的原因。
您可以在此處找到有關語法的更多信息: https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax
該活動在創建臨時表后有一條注釋,上面寫着“如果您現在運行它,它將返回一個錯誤,因為您還沒有編寫任何查詢。現在,是時候編寫一個標識起始站的查詢了這輛自行車是從里面出來的。” 你只需要繼續閱讀活動,你就會明白為什么會發生錯誤。
建議是在開始之前先看一下活動,這樣您就會知道在完成活動時會遇到什么。
您必須添加查詢,因為您剛剛創建了一個將持續 60 分鍾的“臨時表”,並且您在創建臨時表后沒有添加查詢,這就是您收到錯誤的原因。
-- 示例 -- SELECT * FROMlongest_used_bike;
我在課程中遇到了這個問題。
在 BigQuery 中創建臨時表而底部沒有 SELECT 語句會導致此錯誤。 通過在末尾添加 SELECT 語句將解決該問題。
因此,只需在您創建的臨時表下方添加一條語句:SELECT * FROMlongest_used_bike
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.