一:变量
变量分为局部变量和全局变量 (全局变量是系统自定的,是不可手动给值的,若想自己定义全局变量可考虑创建全局临时表!)
局部变量的定义: declare @变量名 数据类型 (局部变量只能用于同一批处理当中!!!!!!!)
全局变量: @@
@@error 最后一个T-SQL语句错误的错误号
@@identity 最后一次插入的标识值
@@rowcount 受上一个SQL语句影响的行数
@@servicename 该计算机上SQl服务器的名称
@@version SQL Server的版本信息
@@transcount 当前连接打开的事务数
@@timeticks 当前计算机上每刻度的微秒数
@@max_connections 可以创建的,同时连接的最大数目
@@language 当前使用的语言的名称
二:给变量赋值 (set 和seklect)
set和select的区别
1:set不支持多个变量赋值,select支持
2:表达式返回多个值时,set出错,select返回最后一条数据
3:表达式未返回任何值时,set赋值为null(没有) select 保持不变
三:输出语句
print @变量名 或
select @变量名
一般从数据库中查找数据后赋值使用select赋值方法
四:数据类型转换
隐式转换: 类型相同或相兼容,自动转换
显式转换: 类型不同,可用convert 函数 或 cast 函数
相同点: 都用于某种数据类型的表达式转换为另一种数据类型
不同点: 在转换日期的时候,convert可以转化为指定的格式
cast (变量名 as 数据类型)
convert(数据类型, 变量名)
五:逻辑控制语句
流程控制语句 begin....end
通常使用在if判断和while循环中,相当于C#中的 {}
分支结构 if..else 或
case ...end(多重选择)
eg:
select 成绩=case
when 条件一 then 结果一
when 条件二 then 结果二
else 其他结果(可省略)
循环结构: while