我以前在R中的一个项目中使用过MS SQL中的ntile函数,但现在需要在Mysql中更改该项目的数据库。据我所知,Ntile是Sql Server中的一个窗口函数,my Sql中没有。我在google上找到了下面的链接,关于Mysql中的tile函数文档。
Mysql Ntile Documentation
我也尝试过同样的方法,但仍然面临错误。
我的问题:

SELECT *, NTILE(10) OVER w AS 'ntile10'
FROM test_table_name w AS (ORDER BY res_rate);

你知道这个问题吗?
有什么办法克服它吗?

最佳答案

您缺少WINDOW关键字:

SELECT *, NTILE(10) OVER w AS ntile1
FROM test_table_name
WINDOW w AS (ORDER BY res_rate);

或:
SELCT *, NTILE(10) OVER(ORDER BY res_rate) AS ntile1
FROM test_table_name;

10-07 17:26