常用sqlserver语句

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
 
原文地址:https://www.cnblogs.com/gossip/p/3784148.html