gpt4 book ai didi

php - mysql语句获取给定行id在有序结果集中的排名

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:43 25 4
gpt4 key购买 nike

我有一个包含多列的 mysql 表。表的主键是“id”列。一行有多个列,但与这个问题最相关的是“日期”,它基本上是一个时间戳。如果我想按时间戳对行进行排序,那么获取给定行 ID 的顺序(排名)的有效方法是什么?最近的时间戳是排名 1,第二个是排名 2,依此类推。我想返回给定行的排名

编辑:我使用 ORDER BY 获取有序集,但我希望 mysql 语句返回特定项目的顺序,而不是有序行。我也不想解析结果集,因为这是 cosnuming 的时间

Edit2:例如假设下表

id    timestamp      name
1 Dec 4, 2016 Bob
2 Jan 1, 2015 Eve
3 Feb 6, 2017 Alice

给定一个id,我应该返回元素的顺序

id=1, expected output: 2 
id=2, expected output: 3 (least recent)
id=3, expected output: 1 (most recent)

最佳答案

无需编辑即可回答:使用 row_number () over (order by ) 子句并放置一些 *dummy

select ROW_NUMBER()over(order by (select1) ) as renk ,* from table

问题编辑后回答..

select ROW_NUMBER()over(order by timestamp  desc ) as renk ,* from table 

关于php - mysql语句获取给定行id在有序结果集中的排名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40647218/

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