实用sql语句
--读取库中的所有表名
select name from sysobjects where xtype='u'
--读取指定表的所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
select name from sysobjects where xtype='u'
--读取指定表的所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
--依照officialDocument的表结构创建officialDocumentdraft表
select * into officialDocumentdraft from officialDocument where 1=2
--判断#T是否存在
if object_id('tempdb..#T') is not null
--插入存储过程返回的结果
insert into table exec
计算最后一个空格的位置
@str
len(@str)-charindex(' ',reverse(@str))+1
--函数
len(‘’) --字符串长度
datalength(‘’) --字符串字节数
COL_LENGTH (@tableName, @columnName) -- is null 可以查询是否存在列
CONVERT(data_type,expression[,style]) --类型转换 e.g. CONVERT(VARCHAR(10),agent_id)
ROW_NUMBER() OVER (PARTITION BY column1 ORDER BY column2) --按column1分组,按column2排序
charindex(' ','this is a test',1) --返回5 从位置1开始返回第一个找到的位置
substring('this is a test',1,4) --返回this 从位置1开始取4个字符长度
len('') --计算字符长度
reverse('') --翻转字符
left('',4)/right('',4) --取4个长度的字符
replicate('a',5) --复制字符,生成5个a
--数字补零
select right('0000'+convert(varchar,12),4) --返回 0012
--语句
set identity_insert tableName1 ON --为有identity列的表插入数据
--关联更新删除
update tbl1 set ... from tbl1 inner join tbl2 on ...
delete from tbl1 from tbl1 inner join tbl2 on ...
--查询存储过程中的内容
select distinct name,text
from report.dbo.syscomments a,report.dbo.sysobjects b
where a.id=b.id and b.xtype='p' and a.text like '%时间%'
--查看存储过程内容
EXEC Sp_HelpText '存储过程名'
IDENT_CURRENT('tblorder')
SCOPE_IDENTITY() --返回操作同一作用域(存储过程、触发器、函数或批处理)内的....
@@IDENTITY --返回最后一个数据表的最后一行的identity值(只对存在identity的情况)