SQL 学习笔记3

来源:互联网 发布:java 线程共享对象 编辑:程序博客网 时间:2024/05/17 06:58

select * from Tb1where EnName like '%100/%%' escape '/'//中间包含了100%,使用了转义字符'/',escape定义转义字符

 

数据类型转换

CAST改变值得数据类型:

English2= castenlishas nvarchar(20) //enlish2(列的名称)转换为nvarchar20),原来的列enlish木有改变,显示转换

CONVERT: (以不同格式显示日期)

select CONVERT(nvarchar(20),GETDATE(),102) as time//三个参数,把日期类型转换为字符类型

select CONVERT(datetime,'2012-04-14 07:25:07') as timeq//把字符类型转换为日期类型

实例:

定义和用法

CONVERT()函数是把日期转换为新数据类型的通用函数。

CONVERT()函数可以用不同的格式显示日期/时间数据。

语法

CONVERT(data_type(length),data_to_be_converted,style)

data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。

可以使用的 style 值:

  

Style ID

   

Style 格式

   

100 或者 0

   

mon dd  yyyy hh:miAM (或者 PM)

   

101

   

mm/dd/yy

   

102

   

yy.mm.dd

   

103

   

dd/mm/yy

   

104

   

dd.mm.yy

   

105

   

dd-mm-yy

   

106

   

dd mon yy

   

107

   

Mon dd, yy

   

108

   

hh:mm:ss

   

109 或者 9

   

mon dd  yyyy hh:mi:ss:mmmAM(或者 PM)

   

110

   

mm-dd-yy

   

111

   

yy/mm/dd

   

112

   

yymmdd

   

113 或者 13

   

dd mon yyyy  hh:mm:ss:mmm(24h)

   

114

   

hh:mi:ss:mmm(24h)

   

120 或者 20

   

yyyy-mm-dd  hh:mi:ss(24h)

   

121 或者 21

   

yyyy-mm-dd  hh:mi:ss.mmm(24h)

   

126

   

yyyy-mm-ddThh:mm:ss.mmm(没有空格)

   

130

   

dd mon yyyy  hh:mi:ss:mmmAM

   

131

   

dd/mm/yy  hh:mi:ss:mmmAM

 

 

去除尾部空格

     selectrtrim('   ye y      ') as new//去除右边的空格

     selectltrim('  ye  y      ')as new//去除左边的空格

 

截取字符长度

    selectSUBSTRING('夜莺教程网cdcjkjbdsbcdujskbkdsv',2,7) as title//截取从2开始的,长度为7个字符

 

插入字符

     select STUFF('yyu的网住四',1,3,'sdf')//1开始,删除3个字符串,把sdf1开始插入

     select STUFF('yyu的网住四',1,0,'sdf')//1开始插入,不删除

 

字符长度

    select LEN('sasdgsdg')

 

大小写转换

    select LOWER('sagdhjfdADAGDAD') as title

    select UPPER('sagdhjfdADAGDAD') as title

    select*,Lower(Name)as newNAME from Tb1//将表Tb1中的Name列全部转换为小写

 

 字符替换

select Replace  ('sghfdsf网 夜莺教程网硅谷动力网 qwsacsc','网','*')//将网替换为*,replace替换字符串

select CHARINDEX ('-','0281-8888888')//获取-在字符中的位置,charindex查找字符在字符串中的位置

select  SUBSTRING('0281-8888888',CHARINDEX('-','0281-8888888')+1,20)//截取-后面的字符

 

日期相关的函数

  select GETDATE() as time//获取系统的当前时间

  select YEAR(GETDATE()) as year

  select month(GETDATE()) as month

  select day(GETDATE()) as day

  select CONVERT(nvarchar(20),GETDATE(),8)//只取时间

 

 select  datepart  (HH,getdate())   as minute//截取当前时间的分钟数,datepart截取时间的部分

 

  select  DATENAME(DW,GETDATE())//今天星期几,返回指定时间的指定部分

  select  DATENAME(WW,'2012-05-05')//2012-5-5是一年中的第几周

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击