gpt4 book ai didi

mysql - 如何只显示一次左表中的所有数据,并在右表中显示匹配的数据

转载 作者:行者123 更新时间:2023-11-30 22:59:05 25 4
gpt4 key购买 nike

我想只显示一次左表中的所有数据,并在右表中显示匹配的数据。

表 1

id        name
1 abc
2 cdr
3 sdf
4 asew
5 sda
6 few
7 asdq
8 uio
9 kjh

表2

id        table1_id      table2_name
1 1 test1
2 2 test1
3 3 test1
4 4 test1
5 1 test2
6 2 test2
7 3 test2
8 4 test2

我只想显示 table1 中的所有数据一次,并显示 table2 中的所有匹配数据,其中 table2_name 等于 'test1'

表1_2

table1_name     table2_name
abc test1
cdr test1
sdf test1
asew test1
sda null
few null
asdq null
uio null
kjh null

最佳答案

select t1.name, t2.min_table2_name 
from table1 t1 left join
(select t2.table1_id, min(t2.table2_name) min_table2_name
from table2 t2
group by t2.table1_id
) t2 on t1.id = t2.table1_id

或者如果你只想显示某个 table2_name 的值

select t1.name, t2.min_table2_name 
from table1 t1 left join
(select t2.table1_id, min(t2.table2_name) min_table2_name
from table2 t2
where t2.table2_name = 'test1'
group by t2.table1_id
) t2 on t1.id = t2.table1_id

关于mysql - 如何只显示一次左表中的所有数据,并在右表中显示匹配的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24847111/

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