SQL批量插入、修改

1. 批量插入

insert into table_A  ( ORDER_CODE, PAYMENT_CODE) values
<foreach item="item" index="index" collection="list" separator=",">
(#{item.ORDER_CODE},if(#{item.PAYMENT_CODE}=‘‘,NULL,#{item.PAYMENT_CODE}))

2.批量更新

update table_A set
PDH_CNT=
<foreach collection="list" item="item" index="index" separator=" " open="case EFH_SN" close="end">
when #{item.efhSn,jdbcType=VARCHAR} then #{item.pdhCnt,jdbcType=INTEGER}
</foreach>
,DUE_DT=
<foreach collection="list" item="item" index="index" separator=" " open="case EFH_SN" close="end">
when #{item.efhSn,jdbcType=VARCHAR} then #{item.dueDt,jdbcType=TIMESTAMP}
</foreach>
where del_flg=0 and EFH_SN in
<foreach collection="list" index="index" item="item" separator="," open="(" close=")">
#{item.efhSn,jdbcType=VARCHAR}
</foreach>

3. table_A 数据导入table_B

INSERT INTO table_B (COMPANY_CODE,ORDER_CODE,PAYMENT_CODE,USER_CODE)

   SELECT COMPANY_CODE,ORDER_CODE,PAYMENT_CODE,USER_CODE FROM table_A

4.清空表table_A

truncate table table_A

原文地址:https://www.cnblogs.com/panyw/p/10980935.html

时间: 2024-12-12 20:32:23

SQL批量插入、修改的相关文章

sql - 批量插入数据

直接构造 insert into t (c1, c2, c3) values (1, 1, 1), (2, 2, 2) 使用UNION insert into t (c1, c2, c3) (select a1, a2, a3) union all (select b1, b2, b3) 利用查询结果 insert into t (c1, c2, c3) (select a1, a2, a3 from t2) sql - 批量插入数据,布布扣,bubuko.com

SQL批量插入表类 SqlBulkInsert

ado.net已经有了sqlBulkCopy, 但是那个用xml格式,网络传输数据量太大. 自己实现了一个,传输尽量少的字节. 性能没对比过,有需要的自己拿去测试. 1 using System.Data.SqlClient; 2 3 namespace RaywindStudio.DAL { 4 5 /// <summary> 6 /// MSSQL批量插入表 7 /// </summary> 8 public static class SqlBulkInsert { 9 10

Delphi中SQL批量插入记录

在进行数据库操作时, 我们经常会遇到批量向数据库中写入记录的情况. 在这里我提供3种操作方式: 1.  单条语句循环插入, 这是最笨的方法:for i := 0 to 100 do  ADOCommand1.Execute('IINSERT INTO .....')   //伪码, 只是说明意思 2.  多条语句批量插入, 将多条Insert语句拼成一条语句, 一次执行:for i := 0 to 100 do  sqlstr := sqlstr + 'INSERT INTO ...';ADOC

SQL批量插入数据

MS SQL Server数据库批量插入数据的sql语句总结: 第一种: insert into tb_NameList(Name,InsertDate,UpdateDate) values('aa',GETDATE(),GETDATE()) insert into tb_NameList(Name,InsertDate,UpdateDate) values('bb',GETDATE(),GETDATE()) insert into tb_NameList(Name,InsertDate,Upd

SQL 批量插入和更改数据

批量插入数据: declare @i int set @i = 12  while @i < 14 begin  INSERT INTO [mdm1220].[dbo].[DEVICE]            ([SERIAL_NUMBER]            ,[IMEI]            ,[WIFI_MAC_ADDR]            ,[BLUETOOTH_MAC_ADDR]            ,[ACTIVESYNC_ID]            ,[STRONG_

Sql批量插入方法

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.Common;using System.Data.Entity;using System.Data.SqlClient;using System.Linq; namespace TY.Tools{ /// <summary> /// 批量插入 /// </summary&

sql 批量插入 insert

INSERT INTO table ( "clo1", "col2", "col3", "col4", "col5" )VALUES ( 1, 10, NULL, '2019-12-19 13:38:35', '新年活动16张卡券'), ( 2, 11, NULL, '2019-12-19 15:05:13', '圣诞活动11张卡券'), ( 3, 12, NULL, '2019-12-19 15:05:1

sql 批量插入数据到Sqlserver中 效率较高的方法

使用SqlBulk #region 方式二 static void InsertTwo() { Console.WriteLine("使用Bulk插入的实现方式"); Stopwatch sw = new Stopwatch(); DataTable dt = GetTableSchema(); using (SqlConnection conn = new SqlConnection(StrConnMsg)) { SqlBulkCopy bulkCopy = new SqlBulkC

sql批量插入数据之存储过程

-- ============================================= -- Author: jf_ou -- Create date: 2016/03/22 -- Description: 插相关配置到配置表 -- eg: -- EXEC AddSysParametersForProjects 'father', 'son', '123, 1234, 12345, 123456', ',' -- ====================================