如何将日期型的数据转换为字符串的数据啊 我要进行日期模糊查询,现在我想将日期型的数据转换为字符串的数据,再查询,请问怎么样的转啊,或怎么样的进行查询啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如:convert(varchar(8),getdate(),112) Select CONVERT(varchar, getdate(), 1),--mm/dd/yy CONVERT(varchar, getdate(), 2),--yy.mm.dd CONVERT(varchar, getdate(), 3),--dd/mm/yy CONVERT(varchar, getdate(), 4),--dd.mm.yy CONVERT(varchar, getdate(), 5),--dd-mm-yy CONVERT(varchar, getdate(), 10),--mm-dd-yy CONVERT(varchar, getdate(), 11),--yy/mm/dd CONVERT(varchar, getdate(), 12),--yymmdd----带世纪号 select convert(varchar(10),getdate(),100) --06 15 2007 或0select convert(varchar(10),getdate(),102) --2007.06.15select convert(varchar(10),getdate(),103) --15/06/2007select convert(varchar(10),getdate(),104) --15.06.2007select convert(varchar(10),getdate(),105) --15-06-2007select convert(varchar(10),getdate(),106) --15 06 2007select convert(varchar(10),getdate(),107) --06-15,200select convert(varchar(10),getdate(),108) --10:06:46 当前时间select convert(varchar(10),getdate(),109) --06 15 2007 或者9select convert(varchar(10),getdate(),110) --06-15-2007select convert(varchar(10),getdate(),111) --2007/06/15select convert(varchar(10),getdate(),112) --20070615select convert(varchar(10),getdate(),113) --15 06 2007 或者13select convert(varchar(10),getdate(),114) --10:10:37:0select convert(varchar(10),getdate(),120) --2007-06-15 或20select convert(varchar(30),getdate(),121) --2007-06-15 10:11:45.040 或21select convert(varchar(30),getdate(),126) --2007-06-15T10:12:44:603select convert(varchar(50),getdate(),127) --2007-06-15T10:14:35:433 说带时区select convert(varchar(40),getdate(),130) --回历dd mon yyyy hh:mi:ss:mmmAMselect convert(varchar(30),getdate(),131) --30/05/1428 10:17:19:470AMGO --*******************************************************************************-- 日期转换参数大全--********************************************************************************select CONVERT(varchar,getdate(),120)--2009-03-15 15:10:02select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')--20090315151201select CONVERT(varchar(12) , getdate(), 111)--2009/03/15select CONVERT(varchar(12) , getdate(), 112)--20090315select CONVERT(varchar(12) , getdate(), 102)--2009.03.15select CONVERT(varchar(12) , getdate(), 108)--15:13:26其它我不常用的日期格式转换方法:select CONVERT(varchar(12) , getdate(), 101 )--03/15/2009select CONVERT(varchar(12) , getdate(), 103 )--15/03/2009select CONVERT(varchar(12) , getdate(), 104 )--15.03.2009select CONVERT(varchar(12) , getdate(), 105 )--15-03-2009select CONVERT(varchar(12) , getdate(), 106 )--15 03 2009select CONVERT(varchar(12) , getdate(), 107 )-- 15, 2009select CONVERT(varchar(12) , getdate(), 109 )--03 15 2009 select CONVERT(varchar(12) , getdate(), 110 )--03-15-2009select CONVERT(varchar(11) , getdate(), 113 )--15 03 2009 select CONVERT(varchar(12) , getdate(), 114)--15:15:55:717 CONVERT(varchar, getdate(), 格式) --日期转换参数,值得收藏select CONVERT(varchar, getdate(), 120 )2004-09-12 11:06:08select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')20040912110608select CONVERT(varchar(12) , getdate(), 111 )2004/09/12select CONVERT(varchar(12) , getdate(), 112 )20040912select CONVERT(varchar(12) , getdate(), 102 )2004.09.12其它我不常用的日期格式转换方法:select CONVERT(varchar(12) , getdate(), 101 )09/12/2004select CONVERT(varchar(12) , getdate(), 103 )12/09/2004select CONVERT(varchar(12) , getdate(), 104 )12.09.2004select CONVERT(varchar(12) , getdate(), 105 )12-09-2004select CONVERT(varchar(12) , getdate(), 106 )12 09 2004select CONVERT(varchar(12) , getdate(), 107 )09 12, 2004select CONVERT(varchar(12) , getdate(), 108 )11:06:08select CONVERT(varchar(12) , getdate(), 109 )09 12 2004 1select CONVERT(varchar(12) , getdate(), 110 )09-12-2004select CONVERT(varchar(12) , getdate(), 113 )12 09 2004 1select CONVERT(varchar(12) , getdate(), 114 )11:06:08.177 select convert (varchar(4),datepart(yyyy,getdate())) //返回当前日期的年select convert(varchar(2),datepart(dd,getdate())) //返回当前日期的日select convert(varchar(2),datepart(mm,getdate())) //返回当前日期的月select convert(varchar(4),right(rand(datepart(ms,getdate())*1000),4)) select day(dateadd(dd,-1,dateadd(mm,1,Dateadd(mm,datediff(mm,0,getdate()),0)))) //返回本月的最大天数 时间格式转换问题 因为新开发的软件需要用一些旧软件生成的一些数据,在时间格式上不统一,只能手工转换,研究了一下午写了三条语句,以前没怎么用过convert函数和case语句,还有"+"操作符在不同上下文环境也会起到不同的作用,把我搞晕了要,不过现在看来是差不多弄好了。 1、把所有"70.07.06"这样的值变成"1970-07-06" UPDATE lvshi SET shengri = '19' + REPLACE(shengri, '.', '-') WHERE (zhiyezheng = '139770070153') 2、在"1970-07-06"里提取"70","07","06" SELECT SUBSTRING(shengri, 3, 2) AS year, SUBSTRING(shengri, 6, 2) AS month, SUBSTRING(shengri, 9, 2) AS day FROM lvshi WHERE (zhiyezheng = '139770070153') 3、把一个时间类型字段转换成"1970-07-06" UPDATE lvshi SET shenling = CONVERT(varchar(4), YEAR(shenling)) + '-' + CASE WHEN LEN(MONTH(shenling)) = 1 THEN '0' + CONVERT(varchar(2), month(shenling)) ELSE CONVERT(varchar(2), month(shenling)) END + '-' + CASE WHEN LEN(day(shenling)) = 1 THEN '0' + CONVERT(char(2), day(shenling)) ELSE CONVERT(varchar(2), day(shenling)) END WHERE (zhiyezheng = '139770070153') 怎样按条件联合查询四个以上表中的数据? 一个关于分组的问题。 sql中,读取某个字段,然后想在他边上生成一个字段,如何做? 关于行列转换存储过程再度请教 找不到原因,数据库表追加之后的检索问题????????? 求一个物料多个单位的建表方法? @@@@@@没有连接到局域网上就无法连接SQLserver服务器,为什么(应用程序和SQLServer都装在本机器上?) sql sever 中文简体是问号,求解决方法。 这个SQL语句怎么写? 为什么我的count(*)非常慢?--千万条记录 求SQL的综合统计查询的语句 查询问题
CONVERT(varchar, getdate(), 1),--mm/dd/yy
CONVERT(varchar, getdate(), 2),--yy.mm.dd
CONVERT(varchar, getdate(), 3),--dd/mm/yy
CONVERT(varchar, getdate(), 4),--dd.mm.yy
CONVERT(varchar, getdate(), 5),--dd-mm-yy
CONVERT(varchar, getdate(), 10),--mm-dd-yy
CONVERT(varchar, getdate(), 11),--yy/mm/dd
CONVERT(varchar, getdate(), 12),--yymmdd
----带世纪号
select convert(varchar(10),getdate(),100) --06 15 2007 或0
select convert(varchar(10),getdate(),102) --2007.06.15
select convert(varchar(10),getdate(),103) --15/06/2007
select convert(varchar(10),getdate(),104) --15.06.2007s
elect convert(varchar(10),getdate(),105) --15-06-2007
select convert(varchar(10),getdate(),106) --15 06 2007
select convert(varchar(10),getdate(),107) --06-15,200
select convert(varchar(10),getdate(),108) --10:06:46 当前时间
select convert(varchar(10),getdate(),109) --06 15 2007 或者9
select convert(varchar(10),getdate(),110) --06-15-2007
select convert(varchar(10),getdate(),111) --2007/06/15
select convert(varchar(10),getdate(),112) --20070615
select convert(varchar(10),getdate(),113) --15 06 2007 或者13
select convert(varchar(10),getdate(),114) --10:10:37:0
select convert(varchar(10),getdate(),120) --2007-06-15 或20
select convert(varchar(30),getdate(),121) --2007-06-15 10:11:45.040 或21
select convert(varchar(30),getdate(),126) --2007-06-15T10:12:44:603
select convert(varchar(50),getdate(),127) --2007-06-15T10:14:35:433 说带时区
select convert(varchar(40),getdate(),130) --回历dd mon yyyy hh:mi:ss:mmmAM
select convert(varchar(30),getdate(),131) --30/05/1428 10:17:19:470AMGO
-- 日期转换参数大全
--********************************************************************************
select CONVERT(varchar,getdate(),120)
--2009-03-15 15:10:02select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
--20090315151201select CONVERT(varchar(12) , getdate(), 111)
--2009/03/15select CONVERT(varchar(12) , getdate(), 112)
--20090315select CONVERT(varchar(12) , getdate(), 102)
--2009.03.15select CONVERT(varchar(12) , getdate(), 108)
--15:13:26其它我不常用的日期格式转换方法:select CONVERT(varchar(12) , getdate(), 101 )
--03/15/2009select CONVERT(varchar(12) , getdate(), 103 )
--15/03/2009select CONVERT(varchar(12) , getdate(), 104 )
--15.03.2009select CONVERT(varchar(12) , getdate(), 105 )
--15-03-2009select CONVERT(varchar(12) , getdate(), 106 )
--15 03 2009select CONVERT(varchar(12) , getdate(), 107 )
-- 15, 2009select CONVERT(varchar(12) , getdate(), 109 )
--03 15 2009 select CONVERT(varchar(12) , getdate(), 110 )
--03-15-2009select CONVERT(varchar(11) , getdate(), 113 )
--15 03 2009 select CONVERT(varchar(12) , getdate(), 114)
--15:15:55:717
select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
20040912110608select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12select CONVERT(varchar(12) , getdate(), 112 )
20040912select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12其它我不常用的日期格式转换方法:select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004select CONVERT(varchar(12) , getdate(), 108 )
11:06:08select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177
select convert(varchar(2),datepart(dd,getdate())) //返回当前日期的日
select convert(varchar(2),datepart(mm,getdate())) //返回当前日期的月
select convert(varchar(4),right(rand(datepart(ms,getdate())*1000),4))
select day(dateadd(dd,-1,dateadd(mm,1,Dateadd(mm,datediff(mm,0,getdate()),0)))) //返回本月的最大天数
时间格式转换问题
因为新开发的软件需要用一些旧软件生成的一些数据,在时间格式上不统一,只能手工转换,研究了一下午写了三条语句,以前没怎么用过convert函数和case语句,还有"+"操作符在不同上下文环境也会起到不同的作用,把我搞晕了要,不过现在看来是差不多弄好了。 1、把所有"70.07.06"这样的值变成"1970-07-06"
UPDATE lvshi
SET shengri = '19' + REPLACE(shengri, '.', '-')
WHERE (zhiyezheng = '139770070153')
2、在"1970-07-06"里提取"70","07","06"
SELECT SUBSTRING(shengri, 3, 2) AS year, SUBSTRING(shengri, 6, 2) AS month,
SUBSTRING(shengri, 9, 2) AS day
FROM lvshi
WHERE (zhiyezheng = '139770070153') 3、把一个时间类型字段转换成"1970-07-06"
UPDATE lvshi
SET shenling = CONVERT(varchar(4), YEAR(shenling))
+ '-' + CASE WHEN LEN(MONTH(shenling)) = 1 THEN '0' + CONVERT(varchar(2),
month(shenling)) ELSE CONVERT(varchar(2), month(shenling))
END + '-' + CASE WHEN LEN(day(shenling)) = 1 THEN '0' + CONVERT(char(2),
day(shenling)) ELSE CONVERT(varchar(2), day(shenling)) END
WHERE (zhiyezheng = '139770070153')