mysql - 在 MYSQL 5.7 中实现 mariadb 的 NTILE() 函数
问题描述
我不能使用 NTILE() 因为我目前使用的是 MYSQL 5.7,所以我想知道如何在没有 NTILE 的情况下将其转换为在 5.7 中可用。这是我要转换的查询:
SELECT
clientid,
ntile(4) over (
order by
last_order_date
) AS `rfm_recency`,
ntile(4) over (
order by
count_order
) AS `rfm_frequency`,
ntile(4) over (
order by
avg_amount
) AS `rfm_monetary`
FROM
(
SELECT
`clientid`,
MAX(`date`) AS `last_order_date`,
COUNT(`id`) AS `count_order`,
AVG(`price`) AS `avg_amount`
FROM
`design`
GROUP BY
`clientid`
) AS t
) AS p```
解决方案
推荐阅读
- ms-office - 将列中的单元格值填充到 Excel Office.js 中另一列中的空白单元格
- javascript - 将我的 JQuery 函数转换为 vanilla js - 多个 forEach 的问题?
- python - 如何从 Python 访问在 EMR 集群中创建的 Hive
- python - 使用 Exchangelib 加快获取电子邮件的速度
- certificate - 在 andorid tv 上安装 CRT 证书文件
- arduino - 失败:Arduino 草图上传到 Wemos Lolin D32——超时或数据包头无效
- gwt - GWT Bootstrap3 上下文菜单
- android - 在 Android 中以编程方式使用渐变着色图标
- unity3d - Unity 检测 ui 画布上的封闭白色表面
- cpu-architecture - 为什么 FADDP D-form 在 Cortex-A72 上的吞吐量高于 FADDP Q-form