gpt4 book ai didi

mysql - 相当于 keep dense_rank for mysql

转载 作者:可可西里 更新时间:2023-11-01 08:25:34 24 4
gpt4 key购买 nike

我有这张 table

create table  sd_devices (
device_code varchar(128),
vin varchar(128),
created_at datetime,
loaded_at datetime
)

我想为每个 device_code 选择第一个 vin order by created_at desc, loaded_at desc

在 Oracle 中,我会使用 keep dense_rank,但在 MySQL 中我不知道该怎么做。

最佳答案

应该这样做:

SELECT DISTINCT device_code,
vin
FROM (
SELECT sd_devices.*
FROM sd_devices
ORDER BY created_at DESC, loaded_at DESC ) AS a
GROUP BY device_code

在子查询中,您选择所有行并以正确的顺序对它们进行排序,然后在外部查询中,您使用 DISTINCT 去除任何重复的行,它将使用它遇到的第一个。因为我们已经按照正确的顺序放置它,所以它会抓取我们想要的一行。

关于mysql - 相当于 keep dense_rank for mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36394904/

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