如何修复sqlite ntile语句中的语法错误?

b09cbbtk  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(412)

我正在尝试在sqlite中执行一个如下所示的查询:

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

但是,当我尝试运行这段代码时,会收到一条错误消息,上面写着“在数据库上执行sql查询时出错:near”(“:syntax error”。
或者,早些时候我收到一个错误,上面写着“对数据库执行sql查询时出错:没有这样的函数:ntile。”
有人知道我做错了什么吗?
(请注意下面的查询工作正常。)

SELECT var_1, 
var_2, 
var_3
FROM
table
lnvxswe2

lnvxswe21#

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

相关问题