–字符串函数

–返回字符串的首字符ASCII编码

select ASCII (‘ame’) -—返回int值

select ASCII(name)from yuangong --注意应用格式

select *from yuangong where ASCII (name)>200

–将字符转化成对应ASCII代码

select CHAR (100)

select CHAR (age)from yuangong

–查字符串,返回符合条件的首字母索引,索引从1开始,返回0代表没找到

–(在C#中indexof索引从开始,返回-1代表没找到)

select CHARINDEX (‘efg’,‘abcdefghijklmnopqrstuvwsyz’)–此时显示5.表示‘efg’的从左向右第一个索引是5!

select CHARINDEX (‘199’,cid) from yuangong --应用于表格的用法

–字符串拼接

select ‘1’+‘abc’+‘2’+'def’as 凭借 --执行,就会显示(凭借:1abc2def)

–返回相似度

select DIFFERENCE (‘abcdefgh’,‘abcdefgh’) --返回数字0~4,4代表完全相似!

–从左向右截取字符

select left (‘abcdefg’,3)–表示从左向右截取3位,显示abc

select RIGHT (‘abcdefg’,3)–表示从右向左截取3位,显示efg

–返回字符串长度

select LEN(’ a v ') --返回. 后面的空格不算,前面和中间的都算!

–全部小/大写

select LOWER(‘ASDFGcvx’)–显示asdfgcvx

select UPPER (‘abcdddc’)–显示ABCDDDC

–从左边去空格

select LTRIM (’ 34332aaa ')

–显示时,去除左面空格!显示:34332aaa

select RTRIM (’ 3234 ')

–显示时,去右边空格!显示: 3234

–替换

select REPLACE (‘1234567890’,‘456’,‘abcd’)

–显示123abcd7890.(要替换的字符串,要替换的内容,修改后的内容)

select REPLACE (cid,‘606’,‘103’)from yuangong --应用于表格中的格式

-复制并粘贴

select REPLICATE (‘abc’,3)–复制abc并粘贴3次

–顺序翻转

select REVERSE (‘abcde’)–显示edcba

select REVERSE (name)from yuangong --在表格中应用格式

–空格

select ‘a’+SPACE (99)+‘b’ --拼接ab为了方便观察!个空格

-截取数字

select STR(123456.789012345,10,9)–10是包含.在内的总数字个数’;9是小数点后保留的个数.以前面数字为主.

–替换字符串

select STUFF (‘abcdefgh’,4,2,’ hello ')–4代表从左向右的第四个索引开始(从开始),2代表替换的字符个数。此时显示abc hello fgh

-截取字符串

select SUBSTRING(‘abcdefg’,4,2) --从指定第4个索引处开始,截取指定2个长度字符串.此时显示de

–常用:大小写,翻转, charindex, substring, len

#################################################################

–日期时间数据类型及函数

-给一个时间加上一段时间

select DATEADD (year,2,‘2006-01-01’) --显示2008-01-01

–求时间差(年,月,天,时,分……都行)

select DATEDIFF (YEAR ,‘2011-07-01’,‘2014-07-01’)–显示3年.

select DATEDIFF (DAY,‘2011-07-01’,‘2014-02-03’)–显示948天.

–提取年,月,日,时,分,秒,星期等

select DATENAME (weekday ,‘2014-11-02’)–显示’天’是.'月’是.'年’是.返回值是nvarchaer

select DATEPART(WEEKDAY ,‘2014-11-02’)–作用同上,返回值int

select YEAR (‘2014-11-02’)–提取年:2014, month 月,day 天.注意格式.作用等同DATEPART

select GETDATE()as 当前时间 --获取数据库当前时间!

select ISDATE(‘2013-06-31’)–判断日期格式是否正确,对:1,错:0.

–常用ISDATE ,GETDATE ,DATEPART ,

类型转换:CAST、CONVERT

select CAST (123 as varchar(20)) --得出varchar型123 。

select CAST (1.23 as int ) --得到int型1.

select CAST (123 as decimal(10,2))–得出decimal型123.00.这里10表示显示数字总个数,2表示小数点后个数

select CAST (12.3 as decimal(18,2))–得出12.30.

select CONVERT (int,123.45)

–用法与CAST相反!

select name,(SUBSTRING(cid,7,4)+‘年’+SUBSTRING(cid,11,2)

+‘年’+SUBSTRING(cid,13,2)+‘月’) as 生日 from yuangong