select id, max(col2)
from t
group by id--  yes,比no大。

解决方案 »

  1.   

    语句:
    --测试数据
    if object_ID('tempdb..#A') is not  null
        drop table #A
    Go
    CREATE TABLE #A
        (
          id  INT ,
      出行  NVARCHAR(10) 
        )
    Insert #A
    select 1,'yes' UNION ALL
    select 1,'no' UNION ALL
    select 1,'no' UNION ALL
    select 2,'yes' UNION ALL
    select 2,'yes' UNION ALL
    select 3,'no' UNION ALL
    select 3,'no'UNION ALL
    select 4,'yes'UNION ALL
    select 5,'no'UNION ALL
    select 5,'no'
     
    go
    --测试数据结束
    ;WITH temp AS (
    SELECT DISTINCT * FROM #A WHERE 出行 = 'yes'
    )
    SELECT * FROM temp 
    UNION
    SELECT * FROM #A WHERE id NOT IN(SELECT id FROM temp)结果: