sql经典,主要是操作表与表之间的数据是否包含和表与表之间数据移动

本文介绍了几种SQL数据操作方法,包括避免重复插入数据、使用inner join更新表数据、多次插入同一临时表以及确保插入数据唯一性的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、今天遇到这么一个功能,要从b,c表中读取一些数据,然后插入a中,但是a中的数据不能重复

解决方法:
INSERT INTO a
select * from
(
从b和c中读取数据
) as tempTable
where tempTable.唯一标示 not in (select 唯一标示 from a )

二、inner join 两个表,然后用得到的数据更新其中一个表

语法:


     update tb1  
 set tb1.a = tb2.a 
 from tb1 inner join tb2  
      on tb1.id = tb2.id


我是这样理解的,先从from后面的语句读取一个表,然后按照set语法在表中修改数据
三、   
多次插入同一个临时表
 第一次用  
   select into #temp from 
   --后来用  
   insert into #temp select
四、 重A表中读取数据插入B表,在B表username会重复的情况下,保证A中的username不重复,排除重复的数据
  insert into B select * from A as a where not exists(select 1 from B where username = a.username)


转载于:https://www.cnblogs.com/gowhy/archive/2011/03/30/1999495.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值