【发布时间】:2016-08-02 11:18:16
【问题描述】:
我有两张桌子:
Table1:
DATAID| NAME | FACTOR
1 | Ann | 1
2 | Kate | 1
3 | Piter | 1
Table2:
DATAID| NAME | FACTOR
1 | John | 2
6 | Arse | 2
3 | Garry | 2
我想要UNION 那些表并得到这个结果:
DATAID| NAME | FACTOR
1 | Ann | 1,2
2 | Kate | 1
3 | Piter | 1,2
6 | Arse | 2
所以当有 2 行具有相同的 dataid 时,我想从 Table1 中获取“NAME”列和某种聚合 FACTOR,例如“1,2”或 3
【问题讨论】:
-
第二张桌子上的约翰和加里怎么了?
-
没关系。安和皮特很重要,约翰和加里不重要。
-
那么你不需要一个 UNION。请说明您的要求。您是否只是为 (dataid, factor) 做一个 UNION,如果存在则从第一个表中选择名称,如果不存在,则从第二个表中获取它?
-
那么查询应该如何知道 Ann 和 Piter 重要,而 John 和 Garry 不重要?看来您正在使用 John 和 Garry 的 FACTOR 值并将它们附加到 Ann 和 Piter 的值。查询应该如何确定这一点?