同步操作
MERGE INTO - 数据的目的地,将数据最终 MERGE 到的表对象
USING 与源表连接 ON 关联的条件
WHEN MATCHED - 如果匹配成功,即关联条件成功 (这时就应该将 SOURCE 中其它的所有字段值更新到 TARGET 表中)
WHEN NOTMATCHED BY TARGET - 如果匹配不成功 (TARGET 中没有这一条记录但是 SOURCE 表有,说明 SOURCE 表多了新数据因此应该插入到 TARGET 表中)
WHEN NOTMATC...
CTE语法(子查询部分),目的是为了提高可读性和可维护性。把子查询部分提出来之后再使用。
eg:
with
cr as(select * form A where...)
select * form B where B.a in (select cr.a from cr)
使用CTE注意事项:
1,CTE后面必须直接跟着查询语句(select,update,insert),否则,CTE将失效。
2,CTE后面也可以跟其他CTE语句,但是只能使用一个with,多个CTE语句之间需要用逗号(,)分隔。...
在复选框多选的时候,我们找到多行数据,需要在数据库中查询.这个多行数据查询的时候,例如id.
此时变为了一个长的一个字符串,他的sql存储过程如下
create proc proc_deleteCheck
@deletes varchar(max)
as
declare @set varchar(max);
set @set='delete from Student where StuNum in ('+@deletes+')'
exec(@set)
但是为先写的不是这个,是以下这个语句
create proc pro...
http://www.cnblogs.com/AK2012/archive/2013/01/04/2844283.html
(欣赏别人的,供以后深入了解)
当我们明白了什么是索引,什么时间创建索引以后,我们就会想,我们创建的索引到底效率执行的怎么样?好不好?我们创建的对不对?
首先我们来认识一下DMV,DMV (dynamic management view)动态管理视图和函数返回特定于实现的内部状态数据。推出SQL Server 2005时,微软介绍了许多被称为dmvs的系统视图,让您可以探测SQL Server 的健康状况,诊断问题,...
索引分为聚集索引和非聚集索引
其目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间
有俩个例子
图书馆的例子:一个图书馆那么多书,怎么管理呢?建立一个字母开头的目录,例如:a开头的书,在第一排,b开头的在第二排,这样在找什么书就好说了,这个就是一个聚集索引,可是很多人借书找某某作者的,不知道书名怎么办?图书管理员在写一个目录,某某作者的书分别在第几排,第几排,这就是一个非聚集索引
字典的例子:字典前面的目录,可以按照拼音和部首去查询,我们想查询一个字,只需要根据拼音或者部首去查询,...
创建临时表
方法一:
create table #临时表名(字段1 约束条件,
字段2 约束条件,
.....)
create table ##临时表名(字段1 约束条件,
字段2 约束条件,
.....)
方法二:
select * into #临时表名 from 你的表;
select * into ##临时表名...
create trigger a_b
on b
after delete
as
delete form b
where.........
在定义触发器的时候 ,触发器名称在create trigger 关键字之后,On 子句指定要创建触发器的表,after子句(也可以用FOR代替AFTER 关键字,二者功能相同)指定激活触发器的操作语句,可以同时指定多个操作语句。例如: “AFTER DELETE INSERT” 表示在激活相应的触发器的时候,AS 关键字之后触发器执行什么样的操作。...
在SQL server中直接调用
1.当前系统时间
select getdate();
输出结果:2016-10-27 20:07:09.133
2给指定日期加上指定天数(输出DATETIME类型)
例如:给2016-10-27加上3天
select dateadd(day,3,'2016-10-27') 返回 2016-10-30 00:00:00.000
其中的day也可以换为 'MONTH' OR 'YEAR'
3 datediff( , , )返回俩个时间之...
对表中的列进行约束的方式------
例如对表 reader 中的 readersex 列只能填‘男'OR'女'
alter table reader add check(readersex='男'or readersex='女')
接下来这个是当我们在表中的一个字段中没有定义默认值是可以这样做---
--alter table book drop constraint gb;
--alter table book add constraint gb default getdate() for gb;
...
[1] ----insert into tablename(表名)(firstcol,secondcol......,lastcol)[列名]values('','','')
【values后面跟的值的类型必须跟表中的列名定义的类型相同】
[2]--------------------------------------
insert into Student(S_StuNo,S_Name,S_Sex,S_Height)
select '001','项羽','男','190' union
select '002','刘邦','男'...