gpt4 book ai didi

mysql - 选择不同的连接多个表

转载 作者:行者123 更新时间:2023-11-29 17:16:31 26 4
gpt4 key购买 nike

我在 MySQL 中有两个长表,其形式如下

Tab1
=========
col1 col2
A X
B Y

还有

Tab2
=========
col3 col4
A dog
A cat
A dog
B tree
B tree
B bush

我想为 Tab1 的每一行检索 Tab2 的不同值,其中 col1=col3,这样输出看起来像这样

   Col1   Col4
A (dog,cat)
B (tree,bush)

我尝试结合使用 SELECT DISTINCTJOIN ON 但我只是获得了

dog
cat
tree
bush

我想做的事情可行吗?

最佳答案

SELECT Tab1.col1, GROUP_CONCAT(DISTINCT Tab2.col4) 
FROM Tab1
INNER JOIN Tab2 ON Tab1.col1 = Tab2.col3
GROUP BY Tab1.col1

请注意,“结果将被截断为 group_concat_max_len 系统变量指定的最大长度,该变量的默认值为 1024”。 (https://dev.mysql.com/doc/refman/8.0/en/group-by-functions.html#function_group-concat)

如果您期望有大量串联值,则应该将此变量设置为更高的值。

关于mysql - 选择不同的连接多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51552855/

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