1、查看表上的索引
sp_helpIndex [表名] --查询表上拥有的索引
2、更新其它表
update 申请信息
set 研发部门='123',版本信息='321'
where 单号=(select 单号 from 明细信息 where 明细编号=60)
update 申请信息
set 研发部门= B.单号 from 明细信息 B where B.明细编号=60
3、object_id()函数的使用
sysobjects系统表存储着数据库所有对象,每对象都有唯id号进行标识.
object_id根据对象名称返回该对象id.
反之,object_name根据对象id返回对象名称.
select object_id(对象名)等同于:
select id from sysobjects where name=对象名
注: 参数临时表名,则必须指定所属数据库.举出OBJECT_ID('Tempdb..##flowcount') 属于种情况.说明临时表数据库Tempdb.
select object_name(id号)等同于:
select name from sysobjects where id=id号
4、CHARINDEX函数
CHARINDEX ( expression1 , expression2 [ , start_location ] )
CHARINDEX('SQL', 'Microsoft SQL Server')
这个函数命令将返回在“Microsoft SQL Server”中“SQL”的起始位置,找不到返回0
5、随即取N条数据
SELECT TOP 50 * FROM [dbo].Employees
ORDER BY NEWID()
6、查看SQL语句的I/O开销
DBCC FREEPROCCACHE;
DBCC DROPCLEANBUFFERS;
SET STATISTICS IO ON;
SELECT * FROM Employees AS e WHERE e.LastName='Davolio'
7、强制应用全表扫描或索引
SELECT * FROM Employees AS e WITH(INDEX=LastName) WHERE e.LastName='Davolio' --强制应用索引
SELECT * FROM Employees AS e WITH(ForceScan) WHERE e.LastName='Davolio' -- 强制应用全表扫描
8、显示查询计划(功能同:Ctrl+L)
SET SHOWPLAN_ALL ON
GO
SELECT * FROM TEST
WHERE CREATE_DATE >='2013-04-09 00:00'
AND CREATE_DATE <='2014-04-30 00:00'
AND TYPE='S'
GO
SET SHOWPLAN_ALL OFF;
GO