簡體   English   中英

如何修復 SQLite NTILE 語句中的語法錯誤?

[英]How to fix syntax error in SQLite NTILE statement?

我正在嘗試在 SQLite 中執行如下查詢:

SELECT var_1, 
var_2, 
NTILE(4) OVER (
  GROUP BY var_1,
  ORDER BY var_3
) AS quartile
FROM
table

但是,當我嘗試運行此代碼時,我收到一條錯誤消息,提示“在數據庫上執行 SQL 查詢時出錯:靠近“(”:語法錯誤)。

或者,早些時候我收到一條錯誤消息,上面寫着“在數據庫上執行 SQL 查詢時出錯:沒有這樣的 function:NTILE。”

有人知道我在做什么錯嗎?

(請注意下面的查詢可以正常工作。)

SELECT var_1, 
var_2, 
var_3
FROM
table

NTILE() 的正確語法使用“PARTITION BY”而不是“GROUP BY”,因此您的查詢應該是:

SELECT var_1, 
       var_2, 
       NTILE(4) OVER (
           PARTITION BY var_1
           ORDER BY var_3
       ) AS quartile
FROM
table

暫無
暫無

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

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