zl程序教程

您现在的位置是:首页 >  其他

当前栏目

MSSQL经典语句

经典 mssql 语句
2023-06-13 09:13:42 时间

1.按姓氏笔画排序:
Select*FromTableNameOrderByCustomerNameCollateChinese_PRC_Stroke_ci_as

2.数据库加密:
selectencrypt("原始密码")
selectpwdencrypt("原始密码")
selectpwdcompare("原始密码","加密后密码")=1--相同;否则不相同encrypt("原始密码")
selectpwdencrypt("原始密码")
selectpwdcompare("原始密码","加密后密码")=1--相同;否则不相同

3.取回表中字段:
declare@listvarchar(1000),@sqlnvarchar(1000)
select@list=@list+","+b.namefromsysobjectsa,syscolumnsbwherea.id=b.idanda.name="表A"
set@sql="select"+right(@list,len(@list)-1)+"from表A"
exec(@sql)

4.查看硬盘分区:
EXECmaster..xp_fixeddrives

5.比较A,B表是否相等:
if(selectchecksum_agg(binary_checksum(*))fromA)
   =
  (selectchecksum_agg(binary_checksum(*))fromB)
print"相等"
else
print"不相等"

6.杀掉所有的事件探察器进程:
DECLAREhcforeachCURSORGLOBALFORSELECT"kill"+RTRIM(spid)FROMmaster.dbo.sysprocesses
WHEREprogram_nameIN("SQLprofiler",N"SQL事件探查器")
EXECsp_msforeach_worker"?"

7.记录搜索:
开头到N条记录
SelectTopN*From表
-------------------------------
N到M条记录(要有主索引ID)
SelectTopM-N*From表WhereIDin(SelectTopMIDFrom表)OrderbyID Desc
----------------------------------
N到结尾记录
SelectTopN*From表OrderbyIDDesc

8.如何修改数据库的名称:
sp_renamedb"old_name","new_name" 

9:获取当前数据库中的所有用户表
selectNamefromsysobjectswherextype="u"andstatus>=0

10:获取某一个表的所有字段
selectnamefromsyscolumnswhereid=object_id("表名")

11:查看与某一个表相关的视图、存储过程、函数
selecta.*fromsysobjectsa,syscommentsbwherea.id=b.idandb.textlike"%表名%"

12:查看当前数据库中所有存储过程
selectnameas存储过程名称fromsysobjectswherextype="P"

13:查询用户创建的所有数据库
select*frommaster..sysdatabasesDwheresidnotin(selectsidfrommaster..sysloginswherename="sa")
或者
selectdbid,nameASDB_NAMEfrommaster..sysdatabaseswheresid<>0x01

14:查询某一个表的字段和数据类型
selectcolumn_name,data_typefrominformation_schema.columns
wheretable_name="表名"

[n].[标题]:
Select*FromTableNameOrderByCustomerName 

[n].[标题]:
Select*FromTableNameOrderByCustomerName