[quote][color=red]用getdate()方法可以获取当现的日期加上[/color]时间。
但是如果我们只需要得到当前的日期,不需要时间部分,或者不需要日期只要时间部分,再或者我要只要字段中的日期以某种形式显示,应该怎么操作呢?
可以使用
convert(varchar(10),getdate(),120)
这样的方法来实现,其中varchar(10)定义的是你要的字段的长度,当然长度的不同返回的也会不的,如果我们只要日期部分,设成10正好为日期长度,如果设成19则正好可以读到时间部分。[/quote]
现在介绍最后面代的参数,分别以代的参数及实例效果说明
[table]
|参数 结果|
|100 05 8 2006 9:27PM|
|101 05/08/2006|
|102 2006.05.08|
|103 08/05/2006|
|104 08.05.2006|
|105 08-05-2006|
|106 08 05 2006|
|107 05 08, 2006|
|108 21:30:51|
|109 05 8 2006 9:31:11|
|110 05-08-2006|
|111 2006/05/08|
|112 20060508|
|113 08 05 2006 21:31:59|
|114 21:33:06:503|
|120 2006-05-08 21:33:38|
[/table]
但是如果我们只需要得到当前的日期,不需要时间部分,或者不需要日期只要时间部分,再或者我要只要字段中的日期以某种形式显示,应该怎么操作呢?
可以使用
convert(varchar(10),getdate(),120)
这样的方法来实现,其中varchar(10)定义的是你要的字段的长度,当然长度的不同返回的也会不的,如果我们只要日期部分,设成10正好为日期长度,如果设成19则正好可以读到时间部分。[/quote]
现在介绍最后面代的参数,分别以代的参数及实例效果说明
[table]
|参数 结果|
|100 05 8 2006 9:27PM|
|101 05/08/2006|
|102 2006.05.08|
|103 08/05/2006|
|104 08.05.2006|
|105 08-05-2006|
|106 08 05 2006|
|107 05 08, 2006|
|108 21:30:51|
|109 05 8 2006 9:31:11|
|110 05-08-2006|
|111 2006/05/08|
|112 20060508|
|113 08 05 2006 21:31:59|
|114 21:33:06:503|
|120 2006-05-08 21:33:38|
[/table]
select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),\'-\',\'\'),\' \',\'\'),\':\',\'\')
20040912110608
select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12
select CONVERT(varchar(12) , getdate(), 112 )
20040912
select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12
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 )
11:06:08
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
select CONVERT(varchar(10) , getdate(), 120 )
SELECT convert(char,日期字段,120) as date2 from table
mssql默认以系统时间格式输出,你可以调整系统的时间格式来解决
当然是在程序里解决比较灵活,convert(char,date,N)输出的各种样式
N 日期样式
0 04 2 2005 9:06AM
1 04/02/05
2 05.04.02
3 02/04/05
4 02.04.05
5 02-04-05
6 02 04 05
7 04 02, 05
8 09:06:18
9 04 2 2005 9:06:18:857AM
10 04-02-05
11 05/04/02
12 050402
13 02 04 2005 09:06:18:857
14 09:06:18:857
20 2005-04-02 09:06:18
21 2005-04-02 09:06:18.857
22 04/02/05 9:06:18 AM
23 2005-04-02
24 09:06:18
25 2005-04-02 09:06:18.857
100 04 2 2005 9:06AM
101 04/02/2005
102 2005.04.02
103 02/04/2005
104 02.04.2005
105 02-04-2005
106 02 04 2005
107 04 02, 2005
108 09:06:18
109 04 2 2005 9:06:18:857AM
110 04-02-2005