如何在列具有不同数据时获取不同的值

时间:2017-07-26 19:10:18

标签: sql sql-server

考虑下表

KEY    WO#    Parts   Name
77     11     1       aa
77     11     2       aa
81     12     2       bb
82     9      3       cc

现在我想为我的报告编写一个查询,以便每当有重复的RKEY我希望它忽略它,即使重复的RKEY中的部分数量不同并继续下一个RKEY。这可能吗

最终结果

KEY    WO#    Parts   Name
77     11     1       aa
81     12     2       bb
82     9      3       cc

2 个答案:

答案 0 :(得分:2)

这已经被问了几百次。但是输入解决方案要比找到现有答案更快。

select [KEY]
    , [WO#]
    , Parts
    , Name
from
(
    select [KEY]
        , [WO#]
        , Parts
        , Name
        , RowNum = ROW_NUMBER() over (partition by KEY order by Parts)
    from YourTable
) x
where RowNum = 1

答案 1 :(得分:-1)

EatPeanutButter是正确的:如果您按'组使用'命令在' Key'上,只有' Key'的第一个实例。将在最终结果中显示。

select * from table group by Key;