gpt4 book ai didi

mysql - MySQL 中的 ROW_NUMBER()

转载 作者:行者123 更新时间:2023-11-29 16:51:40 24 4
gpt4 key购买 nike

MySQL 中有没有一种很好的方法来复制 SQL Server 函数 ROW_NUMBER()

例如:

SELECT 
col1, col2,
ROW_NUMBER() OVER (PARTITION BY col1, col2 ORDER BY col3 DESC) AS intRow
FROM Table1

然后,例如,我可以添加一个条件将 intRow 限制为 1,以获得每个 (col1, col2) 具有最高 col3 的单行) 配对。

最佳答案

MySQL 中没有排名功能。您可以获得的最接近的是使用变量:

SELECT t.*, 
@rownum := @rownum + 1 AS rank
FROM YOUR_TABLE t,
(SELECT @rownum := 0) r
<小时/>

so how would that work in my case? I'd need two variables, one for each of col1 and col2? Col2 would need resetting somehow when col1 changed..?

是的。如果是 Oracle,您可以使用 LEAD 函数在下一个值处达到峰值。值得庆幸的是,Quassnoi 涵盖了 the logic for what you need to implement in MySQL .

关于mysql - MySQL 中的 ROW_NUMBER(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52785895/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com