我想知道是否可以用MySQL做到这一点:
我有两张桌子:
阈值(表格)
-idThreshold(字段) -Name(field)
threshold_results(table)
-idThreshold(字段) -idResult(field)
一个阈值可以有很多结果
我想要一个SELECT,以这种方式显示每个阈值的结果
示例:
Threshold(column) idResults(column)
idThreshold1 IdResult1-IdResult2-idResult3
idThreshold2 IdResult1
idThreshold3 IdResult2-idResult3
idThreshold4
idThreshold5 IdResult7
谢谢!
答案 0 :(得分:2)
使用GROUP_CONCAT
select t.name, group_concat(distinct r.idResult separator '-') as results
from threshold t
left join threshold_results r on r.idThreshold = t.idThreshold
group by t.idThreshold, t.name
答案 1 :(得分:0)
这对我帮助很大,但不是我想知道是否可以通过group_concat查询结果的“#”来执行group_concat。
它产生了一个错误,例如“无效使用组功能”。
这个想法是将concat的结果分组为:
group_concat(t.name, group_concat(distinct r.idResult separator '-') separator '#')
所以我在一栏中得到了所有内容:
idThreshold1,IdResult1-IdResult2-idResult3#idThreshold2,IdResult1# and so on...