比较两条SQL语句运行时间
create proc dbo.PROC_SQL_COMP @sql1 varchar(8000),@sql2 varchar(8000),@t int
as
/*
调用:exec dbo.PROC_SQL_COMP @sql1='',@sql2='',@t=5
注:以下时间单位为ms(millisecond 毫秒)
比较两条件Sql语句执行时间,@sql1、@sql2为要比较的sql语句,@t为sql要运行的次数,结果为平均值
返回: AVG1 @sql1所用平均时间
AVG2 @sql2所用平均时间
DT1 @sql1所用总时间
DT2 @sql2所用总时间
TIMES 执行次数
*/
declare @dt1 datetime,
@dt2 datetime,
@dt3 datetime,
@dt4 datetime,
@ms1 bigint,
@ms2 bigint,
@i int
set @ms1 = 0
set @ms2 = 0
set @i = 0
--开始测试
while @
相关文档:
1.SELECT语句从数据库中选取数据
SELECT '列名' from '表名' SELECT list_name from table_name 从 '表名' 选区'列名' 数据 SQL SELECT * from table_name 从 '表名' 选区全部数据
2.SELECT 加WHERE 语句
SELECT '列名' from '表名' WHERE '条件'
3.SELECT 加AS 语句
使用AS 给数据指定一个别名。此别名用来在表达式 ......
use Dbname
go
select
[表名]=c.Name,
[表说明]=isnull(f.[value],''),
[列名]=a.Name,
[列序號]=a.Column_id,
&nbs ......
1、SQL是一种说明性语言,不是过程化语言。类似“检索->检查->插入->更新”的过程化步骤的顺序是没有意义的。应该以行集的方式思考,以描述一个逻辑的语言方式思考。
2、在设计数据库表字段时,一个行描述应该包含一个事实,而且是全部事实。例如考勤卡的设计,
不要设计为:[ userId, puchTime, even ......
--8-1
USE Northwind
SELECT * from ::fn_dblog('', '')
GO
--8-2
USE Northwind
SELECT * from ::fn_dblog('', '') WHERE [Begin Time] >= '02/01/07'
GO
--9-1
SELECT *
from master.dbo.sysprocesses
--9-2
SELECT *
from sys.dm_exec_requests
--9-3
DECLARE @Handle varbinary(64);
SEL ......
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
FN = 标量函数
IF = 内嵌表函数
K = PRIMARY KEY 或 UNIQUE 约束
L = 日志
P = 存储过程
R = 规则
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
V = 视图
X = 扩展存储过程
......