mssqlserver字符串日期互相转换
2008-08-03 14:17
387 查看
1.日期格式转换
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm
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 )
2.求时间差
datediff(day,时间1,时间2) 若1小于2 结果为正,否则为负
SELECT (DATEDIFF (day, getdate(),cast(startime as datetime)))>2 FROM tasktb
3.格式转换方法
SELECT convert(char,youdatefield,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
111 2005/04/02
112 20050402
113 02 04 2005 09:06:18:857
114 09:06:18:857
120 2005-04-02 09:06:18
121 2005-04-02 09:06:18.857
126 2005-04-02T09:06:18.857
SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm
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 )
Without century (yy) | With century (yyyy) | Standard | Input/Output** |
- | 0 or 100 (*) | Default | mon dd yyyy hh:miAM (or PM) |
1 | 101 | USA | mm/dd/yy |
2 | 102 | ANSI | yy.mm.dd |
3 | 103 | British/French | dd/mm/yy |
4 | 104 | German | dd.mm.yy |
5 | 105 | Italian | dd-mm-yy |
6 | 106 | - | dd mon yy |
7 | 107 | - | Mon dd, yy |
8 | 108 | - | hh:mm:ss |
- | 9 or 109 (*) | Default + milliseconds | mon dd yyyy hh:mi:ss:mmmAM (or PM) |
10 | 110 | USA | mm-dd-yy |
11 | 111 | JAPAN | yy/mm/dd |
12 | 112 | ISO | yymmdd |
- | 13 or 113 (*) | Europe default + milliseconds | dd mon yyyy hh:mm:ss:mmm(24h) |
14 | 114 | - | hh:mi:ss:mmm(24h) |
- | 20 or 120 (*) | ODBC canonical | yyyy-mm-dd hh:mi:ss(24h) |
- | 21 or 121 (*) | ODBC canonical (with milliseconds) | yyyy-mm-dd hh:mi:ss.mmm(24h) |
- | 126(***) | ISO8601 | yyyy-mm-dd Thh:mm:ss:mmm(no spaces) |
- | 130* | Kuwaiti | dd mon yyyy hh:mi:ss:mmmAM |
- | 131* | Kuwaiti | dd/mm/yy hh:mi:ss:mmmAM |
datediff(day,时间1,时间2) 若1小于2 结果为正,否则为负
SELECT (DATEDIFF (day, getdate(),cast(startime as datetime)))>2 FROM tasktb
3.格式转换方法
SELECT convert(char,youdatefield,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
111 2005/04/02
112 20050402
113 02 04 2005 09:06:18:857
114 09:06:18:857
120 2005-04-02 09:06:18
121 2005-04-02 09:06:18.857
126 2005-04-02T09:06:18.857
相关文章推荐
- mssqlserver字符串日期互相转换
- mssqlserver字符串日期互相转换
- mssqlserver字符串日期互相转换
- mssqlserver字符串日期互相转换
- Oracle中的日期和字符串互相转换
- Java中 日期类型 与字符串类型互相转换
- 日期时间与字符串互相转换
- Oracle中的日期和字符串互相转换
- Oracle中的日期和字符串互相转换
- java中日期与字符串互相转换
- 日期、字符串、时间戳之间的互相转换
- java---SimpleDateFormat---实现字符串和日期类型互相转换
- Oracle中的日期和字符串互相转换
- Oracle TO_CHAR()和TO_DATA()函数日期和字符串互相转换
- 转:Oracle中的日期和字符串互相转换
- Oracle中的日期和字符串互相转换以及格式化
- oracle日期与字符串的互相转换SQL语句
- Oracle中的日期和字符串互相转换
- Util工具类 字符串和日期格式互相转换
- Oracle中的日期和字符串互相转换