变量:使用select 语句进行正确赋值的前提条件是查询的返回值是唯一的,如果在一个查询中返回多个值,则只有最后一个查询结果被赋予了变量
字符串函数: ASCII 返回字符串表达式最最左字符的ASCII代码值
char 将int类型的ASCII转换成字符 例如:char(64) ->A
charindex 返回字符串中指定表达式的起始位置 例如:select charindex('123','ABC123DEF',2) -> 4
left 返回字符串左边开始指个数的字符
right 返回字符串右边开始指个数的字符
len 返回指定字符串的字符个数,其中不包含尾随空格 例如:select len('ABCDEF ') 结果为 6
lower 将大写字符串书转换为小写字符数据
upper 将小写字符串书转换为大写字符数据
ltrim 删除起始空格后返回字符表达式
rtrim 截断所有尾部空格后返回一个字符串
patindex 返回指定表达式中某模式第一次出现的起始位置,如果在全部有效的文本和字符数类型中没有找到模式则返回0 例如 select patindex ('%ab%','123ab46') ,patindex('ab%','12ab456'),patindex('ab%','ab13cd') 结果为:3 0 1
replace 用第三个表达式替换第一个字符串表达式中出现的所有第二个给定的字符串表达式
日期时间函数: dateadd 在指定日期上加一段时间间隔,返回新的datetime值 dataeadd(datepart,munber,date)
例如:select dateadd(d,5,getdate()) as '日期天数加5' --d表示天数,M表示月 yy表示年
datepart 返回指定日期的指定日期部分的整数 datepart(datepart ,date)
Day 返回代表指定日期的天数部分 语法: day(date)
getdate 返回当前系统日期和时间 语法: getdate
getutcdate 返回表示当前通过协调时间或格林尼治标准时间 语法: getutcdate ()
month 返回指定日期月份整数 语法: month(date)
year 返回指定日期年份整数 语法: year(date)
数学函数: abs 返回给定数字表达式的绝对值
rand 返回0-1直接随机float值
round 返回数字表达式并且进行四舍五入
floor 返回小于或者等于指定数值表达式的最大整数
sign 返回给指定表达式的 正(+) 负(-) 零(0) 例如 sign(-12) 结果为 -1 sign(12) 结果为1
数据类型转换函数: cast 将一种数据类型的表达式显式转换成另外一张数据类型的表达式
语法: cast (表达式 as 数据类型) 例如: select '年龄:'+cast (23 as nvarchar) 结果为: 年龄:23
convert 将一种数据类型的表达式显示转换成另一种数据类型的的表达式
语法:convert(数据类型,表达式) 例如: convert(char(10),getdate(),120) 结果为当前日期
控制流语句:1 begin .....end
2 if ...else 例如:if exists (select * from 表名称 ) begin selct * from 表名称 end
3 while break countinue while语句用于设置重复执行的sql语句或者语句块continue语句可以让语句跳过contunue 语句之后的语句回到while循环的第一行,break语句则让程序完全跳出循环结束while循环的执行。
例如: declare @a int
declare @b int
set@a=1
set @b=0
while(@a<=100)
begin
set @b=@b+@a
end
print @b