gpt4 book ai didi

mysql - SQL-根据条件从不同表中选择不同字段

转载 作者:行者123 更新时间:2023-11-29 09:27:37 27 4
gpt4 key购买 nike

我有两个如下表:

表1:

>  ACCOUNT    datetime     Doc1   
-----|------------|-------
| A | 04/01/2019 | 399
| A | 23/03/2019 | 244
| A | 04/03/2009 | 555
| B | 08/11/2009 | 300
| B | 05/11/2019 | 200

表 2:

  >  ACCOUNT  datetime     Doc2   
-----|------------|-------
| A | 04/10/2019 | 7832
| A | 23/07/2018 | 6325
| B | 08/10/2019 | 3877
| B | 03/02/2010 | 3267

我的表有不同的字段,我的意思是它们都有 ACCOUNTdatetime,但其中一个有 Doc1 ,另一个有 >文档2

我们的要求是读取每个帐户相关的Doc(可以是Doc1Doc2)其中日期时间是最近的日期。

结果如下:

>     ACCOUNT datetime     Doc   
-----|------------|-------
| A | 04/10/2019 | 7832 (Table2)
| B | 05/11/2019 | 200 (Table1)

我无法实现它。我可以找到 MAX(datetime) 但无法读取相关的 Doc (可以是 Dcc1Doc2 )

谁能帮我解决这个问题吗?

谢谢

罪恶

最佳答案

您可以使用窗口函数和union all:

select t12.*
from (select t12.*,
row_number() over (partition by account order by datetime desc) as seqnum
from ((select account, datetime, doc1
from table1
) union all
(select account, datetime, doc2
from table2
)
) t12
) t12
where seqnum = 1;

关于mysql - SQL-根据条件从不同表中选择不同字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59305828/

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