gpt4 book ai didi

mysql - 获取 SQL 中表中每一行的最大日期

转载 作者:行者123 更新时间:2023-11-29 10:22:49 30 4
gpt4 key购买 nike

我编辑了我的答案,所以我的问题的解决方案是:

select  DISTINCT e.Cod_proiect
, p.Descriere
, p.Stare
, p.ClientService
, e.Data
from ExpPoz as e
join Proiecte as p
on e.Cod_proiect=p.Cod_proiect
join (
select cod_proiect, max(data) maxDt
from ExpPoz
group by cod_proiect
) latest on latest.cod_proiect = e.cod_proiect and latest.maxDt = e.Data and p.Stare='I'

出现以下错误:子查询返回超过 1 个值我试图让每一行都有最大日期。

我有以下表结构:

a    date1
a date2
a date3
b date4
b date5

假设 date3 和 date5 是最旧/最大的,输出应该是:

a   date3
b date5

提前致谢。

最佳答案

这应该可以解决问题:

select  e.Cod_proiect
, p.Descriere
, p.Stare
, p.ClientService
from ExpPoz as e join Proiecte as p on e.Cod_proiect=p.Cod_proiect
join (
select cod_proiect, max(data) maxDt
from ExpPoz
group by cod_proiect
) latest on latest.cod_proiect = e.cod_proiect and latest.maxDt = e.Data
where p.Stare='I'

请注意,您编写 joins 的方式非常古老,如果您使用现代 join 样式,它会更好、更清晰。在此查询中,我选择了您需要的所有内容,并使用每个 cod_proiect 的最新记录加入一次。

关于mysql - 获取 SQL 中表中每一行的最大日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48930913/

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