首页 > 数据库技术 > 详细

sqlserver数据库中sql的使用

时间:2018-11-26 12:26:56      阅读:168      评论:0      收藏:0      [点我收藏+]

1. 分组排序更新

将分组记录中的第一条数据的某个字段更新到第二条数据上的字段;

--把序号为2的结束时间 更新为 序号为1的开始时间
WITH t2 as (
    SELECT * FROM(
        SELECT 
            ROW_NUMBER() OVER ( partition by C_BH_ZFXX ORDER BY DT_KSSJ DESC) as num ,
            C_BH_ZFXX,
            DT_KSSJ,
            DT_JSSJ,
            C_BH
            FROM DB_JY..T_FJFY_FJJL 
        WHERE
        --c_bh_zfxx  in( ‘046B7C4311C0413FBD8A5B5EDC5C9460‘,‘087CE841726B43209439B09E87AE8C48‘) AND
        DT_JSSJ is NULL
    )b
    WHERE b.num=2
)
UPDATE t2 SET t2.dt_jssj = t1.dt_kssj FROM(
    SELECT * FROM(
        SELECT 
            ROW_NUMBER() OVER ( partition by C_BH_ZFXX ORDER BY DT_KSSJ DESC) as num ,
            C_BH_ZFXX,
            DT_KSSJ,
            DT_JSSJ,
            C_BH
            FROM DB_JY..T_FJFY_FJJL 
        WHERE
        --    c_bh_zfxx  in( ‘046B7C4311C0413FBD8A5B5EDC5C9460‘,‘087CE841726B43209439B09E87AE8C48‘) AND
             DT_JSSJ is NULL
        ) a WHERE a.num = 1
) t1
WHERE 
t1.C_BH_ZFXX = t2.C_BH_ZFXX

 

sqlserver数据库中sql的使用

原文:https://www.cnblogs.com/shiyun32/p/10019525.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!