簡體   English   中英

在數據庫“WEATHER”上執行 SQL 查詢時出錯:“(”附近:語法錯誤

[英]Error while executing SQL query on database 'WEATHER': near "(": syntax error

我在 sql 上有這個任務,我必須根據表中行之間的差異從數據庫中的表中選擇一些特定的行,但是在對數據庫“WEATHER”執行 SQL 查詢時不斷收到錯誤:“(”:語法錯誤.. 請問我做錯了什么,任何幫助將不勝感激。

SELECT
    *
    ,LAG(TempHighF,1,0) OVER(ORDER BY Date) AS previousTempHigh
FROM
    weatherdata
WHERE
    TempHighF - previousTempHigh >= 10;

您不能使用列previousTempHigh ,它實際上是WHERE子句中的別名窗口函數。
使用子查詢:

SELECT *
FROM (
  SELECT *, LAG(TempHighF,1,0) OVER(ORDER BY Date) AS previousTempHigh
  FROM weatherdata
)  
WHERE TempHighF - previousTempHigh >= 10;

查看一個簡化的演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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