sql经典,主要是操作表与表之间的数据是否包含和表与表之间数据移动
2011-03-30 10:08
477 查看
一、今天遇到这么一个功能,要从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)
解决方法:
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)
相关文章推荐
- iOS判断是否是移动数据上网,主要为了获取手机号一键登录
- Oracle Copy命令中SQL*Plus的Copy命令操作(在不同的表(同一服务器或是不同服务器)之间复制数据或移动数据)
- android 判断当前网络是否可用(ping网络),包含wifi和移动数据网络
- sql语句查询某列数据是否包含中文或英文
- 如何验证group by的查询SQL中是否包含重复数据
- Javascript: 两个列表框之间移动数据
- 使用Ajax实现DropDownList和ListBox的联动以及两个ListBox之间数据的移动
- 异构数据库之间完全可以用SQL语句导数据
- C# -- sql多表之间的数据查询
- 经典SQL语句大全之(数据开发,管理常识)
- SQL Server里面如何导出包含(insert into)数据的SQL脚本
- 在一个程序中需要用到全局变量(在多个class之间共享数据),请问如何定义具有这种功能的变量?或者是否有其他的方法解决多个class之间的数据共享(尽量简单实现)。 首先应该明确 Java中没有全局变
- Sql不同服务器之间的数据操作
- SQL经典代码---分解字符串并查询相关数据
- SQL不同服务器数据库之间的数据操作整理(完整版)
- 百万数据查询测试 只需1秒--Sql语句效率测试 经典
- 获取MS SQL库数据字典的经典SQL语句
- sql语句 查询字段中指定字符之间的数据
- ffmpeg主要数据结构及其之间的关系
- SQLServer2008导出包含数据的SQL文件