簡體   English   中英

語法錯誤:應為“(”或“,”或關鍵字 SELECT 但腳本結束

[英]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 語句。

這是我認為會發生的事情:

  1. WITH 子句僅創建您的臨時表
  2. 您需要另一條語句來操作或查詢臨時表,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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM