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

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

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

  1. SELECT var_1,
  2. var_2,
  3. NTILE(4) OVER (
  4. GROUP BY var_1,
  5. ORDER BY var_3
  6. ) AS quartile
  7. FROM
  8. table

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

  1. SELECT var_1,
  2. var_2,
  3. var_3
  4. FROM
  5. table
lnvxswe2

lnvxswe21#

ntile()的正确语法使用“partition by”而不是“group by”,因此您的查询应该是:

  1. SELECT var_1,
  2. var_2,
  3. NTILE(4) OVER (
  4. PARTITION BY var_1
  5. ORDER BY var_3
  6. ) AS quartile
  7. FROM
  8. table

相关问题