sql server 中,sql日期格式转换 年月

SQL SERVER 2000用sql语句如何获得当前系统时间
就是用GETDATE();
Sql中的getDate()日 星期二 14:59
Sql Server 中一个非常强大的日期格式化函数
Select CONVERT(varchar(100), GETDATE(), 0);-- 05 16 AM
Select CONVERT(varchar(100), GETDATE(), 1);-- 05/16/08
Select CONVERT(varchar(100), GETDATE(), 2);-- 08.05.16
Select CONVERT(varchar(100), GETDATE(), 3);-- 16/05/08
Select CONVERT(varchar(100), GETDATE(), 4);-- 16.05.08
Select CONVERT(varchar(100), GETDATE(), 5);-- 16-05-08
Select CONVERT(varchar(100), GETDATE(), 6);-- 16 05 08
Select CONVERT(varchar(100), GETDATE(), 7);-- 05 16, 08
Select CONVERT(varchar(100), GETDATE(), 8);-- 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9);-- 05 16 :46:827AM
Select CONVERT(varchar(100), GETDATE(), 10);-- 05-16-08
Select CONVERT(varchar(100), GETDATE(), 11);-- 08/05/16
Select CONVERT(varchar(100), GETDATE(), 12);-- 080516
Select CONVERT(varchar(100), GETDATE(), 13);-- 16 05 :46:937
Select CONVERT(varchar(100), GETDATE(), 14);-- 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20);--
Select CONVERT(varchar(100), GETDATE(), 21);--
10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22);-- 05/16/08 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23);--
Select CONVERT(varchar(100), GETDATE(), 24);-- 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25);--
10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100);-- 05 16 AM
Select CONVERT(varchar(100), GETDATE(), 101);-- 05/16/2008
Select CONVERT(varchar(100), GETDATE(), 102);--
Select CONVERT(varchar(100), GETDATE(), 103);-- 16/05/2008
Select CONVERT(varchar(100), GETDATE(), 104);-- 16.05.2008
Select CONVERT(varchar(100), GETDATE(), 105);-- 16-05-2008
Select CONVERT(varchar(100), GETDATE(), 106);-- 16 05 2008
Select CONVERT(varchar(100), GETDATE(), 107);-- 05 16, 2008
Select CONVERT(varchar(100), GETDATE(), 108);-- 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109);-- 05 16 :49:437AM
Select CONVERT(varchar(100), GETDATE(), 110);-- 05-16-2008
Select CONVERT(varchar(100), GETDATE(), 111);--
Select CONVERT(varchar(100), GETDATE(), 112);--
Select CONVERT(varchar(100), GETDATE(), 113);-- 16 05 :49:513
Select CONVERT(varchar(100), GETDATE(), 114);-- 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120);--
Select CONVERT(varchar(100), GETDATE(), 121);--
10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126);-- T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 130);-- 18 ???? ?????? :49:907AM
使用 CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )参数
expression
是任何有效的 Microsoft(R) SQL Server(TM) 表达式。。&
目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。
nchar、nvarchar、char、varchar、binary 或 varbinary 数据类型的可选参数。&
日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。
SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。
在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)。
不带世纪数位 (yy) 带世纪数位 (yyyy)&
输入/输出**&
- 0 或 100 (*) 默认值 mon dd yyyy hh:miAM(或 PM)&
1 101 美国 mm/dd/yyyy&
2 102 ANSI yy.mm.dd&
3 103 英国/法国 dd/mm/yy&
4 104 德国 dd.mm.yy&
5 105 意大利 dd-mm-yy&
6 106 - dd mon yy&
7 107 - mon dd, yy&
8 108 - hh:mm:ss&
- 9 或 109 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM)&
10 110 美国 mm-dd-yy&
11 111 日本 yy/mm/dd&
12 112 ISO yymmdd&
- 13 或 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)&
14 114 - hh:mi:ss:mmm(24h)&
- 20 或 120 (*) ODBC 规范 yyyy-mm-dd hh:mm:ss[.fff]&
- 21 或 121 (*) ODBC 规范(带毫秒) yyyy-mm-dd hh:mm:ss[.fff]&
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss.mmm(不含空格)&
- 130* Hijri**** dd mon yyyy hh:mi:ss:mmmAM&
- 131* Hijri**** dd/mm/yy hh:mi:ss:mmmAM&
* 默认值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy)。
** 当转换为 datetime时输入;当转换为字符数据时输出。
*** 专门用于 XML。对于从 datetime或 smalldatetime 到 character 数据的转换,输出格式如表中所示。对于从 float、money 或 smallmoney 到 character 数据的转换,输出等同于 style 2。对于从 real 到 character 数据的转换,输出等同于 style 1。
****Hijri 是具有几种变化形式的日历系统,Microsoft(R) SQL Server(TM) 2000 使用其中的科威特算法。
重要 默认情况下,SQL Server 根据截止年份 2049 解释两位数字的年份。即,两位数字的年份 49 被解释为 2049,而两位数字的年份 50 被解释为 1950。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用 2030 作为截止年份。SQL Server 提供一个配置选项(&两位数字的截止年份&),借以更改 SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。
当从 smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从 datetime 或 smalldatetime 值进行转换时,可以通过使用适当的 char 或 varchar 数据类型长度来截断不需要的日期部分。
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/:49:920AM
本文已收录于以下专栏:
相关文章推荐
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate()
11:06:08.17...
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 
例如: 
select getdate()   
convert(varchar(10),字段名,转换格式)
CONVERT(nvarchar(10),count_time,121)
CONVERT为日期转换函数,一般就是在时间类型(dateti...
(可参考下列表格)1、常用日期方法
(1)DATENAME ( datepart ,date )
返回表示指定日期的指定日期部分的字符串。
SELECT DateName(day,...
CONVERT(data_type,expression[,style]) 
convert(varchar(10),字段名,转换格式)
此样式一般在时间类型(datetime,sm...
一.字符操作1.替换指定字符str_replace(string1,需要替换字符,替换成字符)SUBSTRING(string1,,)二.数值操作三.日期操作getdate() 得到当前时间,可以设置...
1、日期时间转换字符串
2、sql server日期与时间函数
3、sql server日期函数
4、sql server日期函数举例
GetDate,DateDiff,Convert
经常会有这样的查询要求,输入或者日历控件产生的日期格式为 yyyy-mm-dd,而数据库中的字段是datetime类型,即yyyy-mm-dd hh:mm:ss。如果简单的使用between语句或者=...
他的最新文章
讲师:王哲涵
讲师:韦玮
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)SQL&Server&日期转换格式
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm
select getdate()
11:06:08.177
这对于在要不同数据库间转移数据或者习惯oracle日期格式YYYY-MM-DD HH24:MI:SS的人多少有些不方便.
我整理了一下SQL Server里面可能经常会用到的日期格式转换方法:
select CONVERT(varchar, getdate(), 120 )
select replace(replace(replace(CONVERT(varchar, getdate(), 120
),'-',''),' ',''),':','')
select CONVERT(varchar(12) , getdate(), 111 )
select CONVERT(varchar(12) , getdate(), 112 )
select CONVERT(varchar(12) , getdate(), 102 )
其它不常用的日期格式转换方法:
select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004
select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004
select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004
select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004
select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004
select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004
select CONVERT(varchar(12) , getdate(), 108 )
select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1
select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004
select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1
select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177
SQL语句中Convert类型转换问题
sql语句如下:
select convert(varchar(500),itemDate) from table
字段itemDate是日期格式,想将日期在sql语句中转换成如下格式输出
如何实现?
select convert(varchar(500),itemDate,120) from table
select convert(varchar(500),itemDate,121) from
table&&--秒的精度更大
&select * from table
where&&datetime
between&&convert(datetime,'')
and convert(datetime,''')
在向指定日期加上一段时间的基础上,返回新的 datetime 值。
DATEADD ( datepart ,
number, date )
如:select
DATEADD(day,1,getdate())&&
返回今天的时间加上一天后的时间&
11:06:49.420 则返回 11:06:49.420
返回跨两个指定日期的日期和时间边界数。
DATEDIFF ( datepart ,
startdate , enddate )
如:select DATEDIFF(minute,getdate(),'
22:00:00')
&& 返回现在的时间跟
22:00:00 差几分钟。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。如何在SQL Server中插入时间类型的数据
责任编辑:
  问:如在中有以下的语句:INSERT INTO mytable (id,) VALUES (100,to_date(' 11:23:25','YYYY-MM-DD HH24:MI:SS'));但是sql server不支持to_date
  最好能给个例子。
create table simp(&id int,&time datetime&& --SQL里自带时间格式)insert into simp(id,time) values (100,' 11:23:25')goselect * from simpdrop table simp
  决定输入的日期如何解释的是 dateformat设置
  SET DATEFORMAT  设置用于输入 datetime 或 smalldatetime 数据的日期部分(月/日/年)的顺序。
  语法  SET DATEFORMAT {
| @format_var }
  参数  format | @format_var
  是日期部分的顺序。可以是
或转换为 Unicode 的 DBCS。有效参数包括 mdy、dmy、ymd、ydm、myd 和 dym。美国英语默认值是 mdy。
  注释  该设置仅用在将字符串转换为日期值时的解释中。它对日期值的显示没有影响。
  SET DATEFORMAT 的设置是在执行或运行时设置,而不是在分析时设置。
  权限  SET DATEFORMAT 权限默认授予所有用户。
  示例  下例使用不同的日期格式处理不同格式的日期字符串。
SET DATEFORMAT mdyGODECLARE @datevar datetimeSET @datevar = '12/31/98'SELECT @datevarGO
SET DATEFORMAT ydmGODECLARE @datevar datetimeSET @datevar = '98/31/12'SELECT @datevarGO
SET DATEFORMAT ymdGODECLARE @datevar datetimeSET @datevar = '98/12/31'SELECT @datevarGO
邀请您:&&&&&&&&&&&&&SQL Server CONVERT() 函数
SQL Server CONVERT() 函数
定义和用法
CONVERT() 函数是把日期转换为新数据类型的通用函数。
CONVERT() 函数可以用不同的格式显示日期/时间数据。
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。
可以使用的 style 值:
Style 格式
100 或者 0
mon dd yyyy hh:miAM (或者 PM)
Mon dd, yy
109 或者 9
mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
113 或者 13
dd mon yyyy hh:mm:ss:mmm(24h)
hh:mi:ss:mmm(24h)
120 或者 20
yyyy-mm-dd hh:mi:ss(24h)
121 或者 21
yyyy-mm-dd hh:mi:ss.mmm(24h)
yyyy-mm-ddThh:mm:ss.mmm(没有空格)
dd mon yyyy hh:mi:ss:mmmAM
dd/mm/yy hh:mi:ss:mmmAM
下面的脚本使用 CONVERT() 函数来显示不同的格式。我们将使用 GETDATE() 函数来获得当前的日期/时间:
CONVERT(VARCHAR(19),GETDATE())
CONVERT(VARCHAR(10),GETDATE(),110)
CONVERT(VARCHAR(11),GETDATE(),106)
CONVERT(VARCHAR(24),GETDATE(),113)
结果类似:
12-29-2008
29 Dec :46.635一、sql&server日期时间函数Sql&Server中的日期与时间函数&1.&&当前系统日期、时间&&&&&select&getdate()&&2.&dateadd&&在向指定日期加上一段时间的基础上,返回新的&datetime&值&&&例如:向日期加上2天&&&&select&dateadd(day,2,'')&&--返回:&00:00:00.000&3.&datediff&返回跨两个指定日期的日期和时间边界数。&&&select&datediff(day,'','')&&&--返回:174.&datepart&返回代表指定日期的指定日期部分的整数。&&select&DATEPART(month,&'')&&--返回&105.&datename&返回代表指定日期的指定日期部分的字符串&&&select&datename(weekday,&'')&&--返回:星期五6.&day(),&month(),year()&--可以与datepart对照一下select&当前日期=convert(varchar(10),getdate(),120)&,当前时间=convert(varchar(8),getdate(),114)&select&datename(dw,'')&select&本年第多少周=datename(week,'')&&&&&&,今天是周几=datename(weekday,'')二、日期格式转换
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 AM&Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06&Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16&Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06&Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06&Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06&Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06&Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06&Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46&Select CONVERT(varchar(100), GETDATE(), 9): 05 16 :46:827AM&Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06&Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16&Select CONVERT(varchar(100), GETDATE(), 12): 060516&Select CONVERT(varchar(100), GETDATE(), 13): 16 05 :46:937&Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967&Select CONVERT(varchar(100), GETDATE(), 20):
10:57:47&Select CONVERT(varchar(100), GETDATE(), 21):
10:57:47.157&Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM&Select CONVERT(varchar(100), GETDATE(), 23): &Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47&Select CONVERT(varchar(100), GETDATE(), 25):
10:57:47.250&Select CONVERT(varchar(100), GETDATE(), 100): 05 16 AM&Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006&Select CONVERT(varchar(100), GETDATE(), 102): &Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006&Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006&Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006&Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006&Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006&Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49&Select CONVERT(varchar(100), GETDATE(), 109): 05 16 :49:437AM&Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006&Select CONVERT(varchar(100), GETDATE(), 111): &Select CONVERT(varchar(100), GETDATE(), 112): &Select CONVERT(varchar(100), GETDATE(), 113): 16 05 :49:513&Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547&Select CONVERT(varchar(100), GETDATE(), 120):
10:57:49&Select CONVERT(varchar(100), GETDATE(), 121):
10:57:49.700&Select CONVERT(varchar(100), GETDATE(), 126): T10:57:49.827&Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? :49:907AM
GetDate( )
返回系统目前的日期与时间
DateDiff (interval,date1,date2)
以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1
DateAdd (interval,number,date)
以interval指定的方式,加上number之后的日期
DatePart (interval,date)
返回日期date中,interval指定部分所对应的整数值
DateName (interval,date)
返回日期date中,interval指定部分所对应的字符串名称
参数 interval的设定值如下:
缩 写(Sql Server)
Access 和 ASP
年 1753 ~ 9999
Day of year
一年的日数,一年中的第几日 1-366
一周的日数,一周中的第几日 1-7
周,一年中的第几周 0 ~ 51
分钟0 ~ 59
Millisecond
毫秒 0 ~ 999
阅读(...) 评论()

我要回帖

更多关于 sql日期格式转换 的文章

 

随机推荐