目前,我有以下結果:從表與一些ID的多行選擇,與標識值
ID Location
1 NYC
1 LA
2 NYC
3 PIT
,我想以下幾點:
ID Location
1 Multiple
2 NYC
3 PIT
有誰知道的簡單的方法來完成這一點?
目前,我有以下結果:從表與一些ID的多行選擇,與標識值
ID Location
1 NYC
1 LA
2 NYC
3 PIT
,我想以下幾點:
ID Location
1 Multiple
2 NYC
3 PIT
有誰知道的簡單的方法來完成這一點?
下面是使用case
與count
和distinct
做到這一點的一種方法:
select distinct id,
case when count(location) over (partition by id) > 1
then 'Multiple' else location end Location
from yourtable
隨着sub-query
,COUNT
,CASE
,GROUP BY
:
SELECT mm.id, CASE WHEN mm.count > 1 THEN 'Multiple' ELSE loc END As Location
FROM
(SELECT COUNT(id) As count, id, MAX(location) As loc
FROM myTable
GROUP BY id) As mm;
select ID,case when MIN(name) = MAX(name) then MIN(name) else 'multiple' end as Location
from <your tabel name>
group by id
你有沒有嘗試自己解決呢? –