【发布时间】:2021-12-31 17:11:33
【问题描述】:
我有一个包含以下数据的 Microsoft SQL 表:
CustomerID Location1 Location2
788 A NULL
788 A B
788 B NULL
649 A NULL
649 NULL B
936 B NULL
我希望能够查询此表并仅返回 CustomerID 和组合的唯一位置。
CustomerID Location1 Location2
788 A B
649 A B
936 B
Select Distinct CustomerID, MAX(Location1) L1, MAX(Location2) L2
FROM table
GROUP BY CustomerID
返回
CustomerID L1 L2
788 B B
649 B
936 B
很难解决这个问题。任何帮助将不胜感激。
【问题讨论】:
-
也许您可以稍微整合一下您的想法,并分享您迄今为止尝试过的事情以及出了什么问题。
-
Select Distinct CustomerID, COALESCE(Location1, Location2) 排序的作品,但我最终得到 788 A 788 B 649 A 649 B 936 B
-
@BarbarosÖzhan
coalesce的解决方案是什么?? -
那也不是真正的工作。我得到 788 B B
-
@JamesBrown 如果有 (111, 11, null) 和 (111, 12, null),应该选择哪一个?
标签: sql sql-server tsql