【发布时间】:2018-07-27 07:25:07
【问题描述】:
我在 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 DISTINCT 和 JOIN ON 的组合,但我刚刚获得
dog
cat
tree
bush
我想做的事情可行吗?
【问题讨论】:
-
Tab2 不是严格的 rdbms 意义上的表,因为它没有唯一键。你能以某种方式解决这个问题吗?否则,这并不是真正的 sql 问题
-
原来的Tab2还有一个3列设置为主键,所有的值都互不相同
-
继续阅读 group_concat dev.mysql.com/doc/refman/8.0/en/…
-
显示查询,您正在写入以获取所需的结果???
-
添加之前的建议:select col3 group_concat(distinct col4) from Tab2 join Tab1 on Tab1.col1=Tab2.col3;但我可以看出这是错误的。
标签: mysql