zoukankan      html  css  js  c++  java
  • 批量处理的sql语句


      declare @EmpTemplateHistoryIDS nvarchar(max)='86e83923-47ac-4541-a124-c1136a0b5fa6';
         declare @TablePayrollFixedItemHistory table
      (
      EmployeeID nvarchar(50),
      EmptemplateHistoryID  nvarchar(50),
      ItemID  nvarchar(50),
      ItemName  nvarchar(50),
      OldItemValue  nvarchar(50),
      NewItemValue  nvarchar(50),
      CreateTime datetime,
      LastUpdateTime datetime
      )
      ---把要保存的固定项历史保存到临时表
      insert into @TablePayrollFixedItemHistory
         select b.EmployeeID,a.*
            from
            [PayrollFixedItemHistory] a,EmpPRTemplateHistory b
           
            where a.EmpTemplateHistoryID=b.EmpTemplateHistoryID and a.EmpTemplateHistoryID
            in (select value from UFun_SqlSplit(@EmpTemplateHistoryIDS,','))
           
            select * from @TablePayrollFixedItemHistory
           
            delete   a   from PayrollFixedItem a , @TablePayrollFixedItemHistory b
            where a.EmployeeID=b.EmployeeID  and a.ItemID not in(select ItemID from @TablePayrollFixedItemHistory where EmployeeID=a.EmployeeID)


        UPDATE a SET
      [ItemValue] = b.[NewItemValue],
      [LastUpdateTime] = getdate()
     FROM [PayrollFixedItem] a, @TablePayrollFixedItemHistory b
     WHERE
      a.[EmployeeID] = b.[EmployeeID] AND
      a.[ItemID] = b.[ItemID]
      
     INSERT INTO [PayrollFixedItem]
     (
      [EmployeeID],
      [ItemID],
      [ItemValue],
      [CreateTime]
     )
     SELECT
      [EmployeeID],
      [ItemID],
      [NewItemValue],
      getdate()
     FROM @TablePayrollFixedItemHistory a
     WHERE NOT EXISTS
      (SELECT * FROM [PayrollFixedItem] WHERE
       [EmployeeID] = a.[EmployeeID] AND
       [ItemID] = a.[ItemID])

  • 相关阅读:
    AWR介绍使用
    hint使用
    部分索引类型介绍\索引重建否\索引压缩
    生成Oracle Statpack步骤
    自治事务
    append与nologging的使用
    聚簇表
    C语言杂谈——静态函数
    Qt之对话框设计——可扩展对话框
    C语言杂谈——指针篇
  • 原文地址:https://www.cnblogs.com/wanyuan8/p/2616704.html
Copyright © 2011-2022 走看看