weixin_45578929 2019-08-28 16:59 采纳率: 0%
浏览 899

SQL 查询表所有数据,货品有重复的取日期较早的一条

表数据
单号 日期 品号 数量
A001 2019-8-1 1 100
A002 2019-8-2 2 200
A003 2019-8-3 3 300
A004 2019-8-4 1 400
A005 2019-8-5 2 500
A006 2019-8-6 3 600
要查询出的结果
单号 日期 品号 数量
A001 2019-8-1 1 100
A002 2019-8-2 2 200
A003 2019-8-3 3 300

  • 写回答

4条回答 默认 最新

  • 听雨停了 2019-08-28 17:06
    关注
    use Tempdb
    go
    if not object_id(N'Tempdb..#tab') is null
        drop table #tab
    Go
    Create table #tab([单号] nvarchar(24),[日期] Date,[品号] int,[数量] int)
    Insert #tab
    select N'A001','2019-8-1',1,100 union all
    select N'A002','2019-8-2',2,200 union all
    select N'A003','2019-8-3',3,300 union all
    select N'A004','2019-8-4',1,400 union all
    select N'A005','2019-8-5',2,500 union all
    select N'A006','2019-8-6',3,600
    GO
    --测试数据结束
    
    SELECT 单号,日期,品号,数量 
    FROM
    (
        Select *,ROW_NUMBER() OVER(PARTITION BY [品号] order by [日期]) as rn
        FROM #tab
    ) AS a
    WHERE rn=1;
    
    单号                       日期         品号          数量
    ------------------------ ---------- ----------- -----------
    A001                     2019-08-01 1           100
    A002                     2019-08-02 2           200
    A003                     2019-08-03 3           300
    
    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序