------------------字符串函数----------------------
    
    
    
      --charindex(要查找的字符串,被查找的字符串,开始查找的位置):返回要查找的字符串在被查找的字符串中的位置
    
    
    
      select charindex('sve','hello sve hi sve',1)--结果为7
    
    
    
      select charindex('sve','hello sve hi sve',8)--结果为14
    
    
    
      --len(字符串):返回字符串的长度
    
    
    
      select len('hello sve')
    
    
    
      --lower(字符串):将字母都转小写
    
    
    
      select lower('AbC')
    
    
    
      --ltrim(字符串):消除左边的空格  rtrim(字符串):消除右边的空格
    
    
    
      select ltrim('  abc  ')
    
    
    
      --right(字符串,要获取的字符数)
    
    
    
      select right('abcdef',2)
    
    
    
      --replace(字符串,将被替换的字符,替换的字符)
    
    
    
      select replace('abcabcc','ab','ww')
    
    
    
      --stuff(字符串,要删除的开始位置,要删除的字符个数,要插入的字符串)
    
    
    
      select stuff('abcdefg',3,2,'你好')
    
    
    
    
      ---------------日期函数------------------
    
    
    
      --getdate():获取当前时间
    
    
    
      select getdate()
    
    
    
      --dateadd(日期部分,要增加的数值,日期):根据制定日期部分增加相应数值
    
    
    
      select dateadd(mm,2,'2013/2/1')--显示2013/4/1
    
    
    
      select dateadd(yy,-2,'2013/2/1')--显示2011/2/1
    
    
    
      --datediff(日期部分,日期1,日期2):根据日期部分算2个日期之间的差距(即:日期2-日期1)
    
    
    
      select datediff(mm,'2013/5/1','2013/10/5')--显示5
    
    
    
      select datediff(mm,'2013/10/5','2013/5/1')--显示-5
    
    
    
      --datename(日期部分,日期):获取指定日期部分的字符串形式
    
    
    
      select datename(dw,'2013/11/6')
    
    
    
      --datepart(日期部分,日期):获取指定日期部分的整数形式
    
    
    
      select datepart(dw,'2013/11/6')
    
    
    
    
      --------------数学函数----------------
    
    
    
      --round(数值,精确度):对数值根据精确度进行四舍五入
    
    
    
      select round(43.125,1)--43.100
    
    
    
      select round(43.125,2)--43.130
    
    
    
      --sign(数值):判断数值是正数、负数或0,如果为正数返回+1,负数返回-1,0返回0
    
    
    
      select sign(10)
    
    
    
      --rand():产生随机数
    
    
    
      select rand()--产生0~1的随机数(默认以系统时间为种子)
    
    
    
      select rand(50)--产生固定的值(种子设置为固定的50)
    
    
    
    
      ----------------系统函数-----------------------
    
    
    
      --Convert(目标数据类型,需要进行转换的数值):数据类型转换
    
    
    
      select 1+2--加法运算
    
    
    
      select '1'+'2'--字符的连接
    
    
    
      select '1'+2--显示3
    
    
    
      select '1'+convert(varchar,2)--显示12
    
    
    
      --datalength(表达式):计算表达式占几个字节
    
    
    
      select datalength('ab')--显示2
    
    
    
      select datalength('你好')--显示4
    
    
    
    
      ----------------聚合函数---------------------
    
    
    
      select sum(score) from StuScore--求分数总和
    
    
    
      select sum(score) from StuScore where score>=60--求及格的分数总和
    
    
    
      select max(score) from StuScore--最大值
    
    
    
      select min(score) from StuScore--最小值
    
    
    
      select avg(score) from StuScore--平均值
    
    
    
      --Count(参数):参数可以是*,也可以是列名
    
    
    
      select count(*) from StuScore--获取结果集的行数
    
    
    
      --注意:使用count(*)不管字段是否为NULL都会被统计
    
    
    
      select count(address) from StuInfo--获取address字段不为NULL的行数
    
  


 
					 
					