zoukankan
html css js c++ java
SQL中CONVERT转化函数的用法
格式:
CONVERT
(data_type,expression
[
,style
]
)
说明:
此样式一般在时间类型(
datetime
,
smalldatetime
)与字符串类型(
nchar
,
nvarchar
,
char
,
varchar
)
相互转换的时候才用到.
例子:
SELECT
CONVERT
(
varchar
(
30
),
getdate
(),
101
) now
结果为:
now
--
-------------------------------------
|
09
/
15
/
2001
===================================================================
style数字在转换时间时的含义如下:
--
----------------------------------------------------------------------------------------------------------
Style(2位表示年份)
|
Style(4位表示年份)
|
输入输出格式
--
----------------------------------------------------------------------------------------------------------
0
|
100
|
mon dd yyyy hh:miAM(或PM)
--
----------------------------------------------------------------------------------------------------------
1
|
101
美国
|
mm
/
dd
/
yy
--
----------------------------------------------------------------------------------------------------------
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:mmmmAM(或PM)
--
----------------------------------------------------------------------------------------------------------
10
|
110
美国
|
mm
-
dd
-
yy
--
----------------------------------------------------------------------------------------------------------
11
|
111
日本
|
yy
/
mm
/
dd
--
----------------------------------------------------------------------------------------------------------
12
|
112
ISO
|
yymmdd
--
----------------------------------------------------------------------------------------------------------
13
|
113
欧洲默认值
|
dd mon yyyy hh:mi:ss:mmm(24小时制)
--
----------------------------------------------------------------------------------------------------------
14
|
114
|
hh:mi:ss:mmm(24小时制)
--
----------------------------------------------------------------------------------------------------------
20
|
120
ODBC 规范
|
yyyy
-
mm
-
dd hh:mi:ss(24小时制)
--
----------------------------------------------------------------------------------------------------------
21
|
121
|
yyyy
-
mm
-
dd hh:mi:ss:mmm(24小时制)
--
----------------------------------------------------------------------------------------------------------
语句及查询结果:
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
0
):
05
16
2006
10
:57AM
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
2006
10
:
57
:
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
2006
10
:
57
:
46
:
937
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
14
):
10
:
57
:
46
:
967
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
20
):
2006
-
05
-
16
10
:
57
:
47
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
21
):
2006
-
05
-
16
10
:
57
:
47.157
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
22
):
05
/
16
/
06
10
:
57
:
47
AM
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
23
):
2006
-
05
-
16
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
24
):
10
:
57
:
47
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
25
):
2006
-
05
-
16
10
:
57
:
47.250
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
100
):
05
16
2006
10
:57AM
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
101
):
05
/
16
/
2006
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
102
):
2006.05
.
16
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
2006
10
:
57
:
49
:437AM
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
110
):
05
-
16
-
2006
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
111
):
2006
/
05
/
16
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
112
):
20060516
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
113
):
16
05
2006
10
:
57
:
49
:
513
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
114
):
10
:
57
:
49
:
547
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
120
):
2006
-
05
-
16
10
:
57
:
49
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
121
):
2006
-
05
-
16
10
:
57
:
49.700
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
126
):
2006
-
05
-
16T10:
57
:
49.827
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
130
):
18
???? ??????
1427
10
:
57
:
49
:907AM
SELECT
CONVERT
(
varchar
(
100
),
GETDATE
(),
131
):
18
/
04
/
1427
10
:
57
:
49
:920AM
说明:
使用
CONVERT
:
CONVERT
( data_type
[
( length )
]
, expression
[
, style
]
)
参数
expression
是任何有效的 Microsoft® SQL Server™ 表达式。。
data_type
目标系统所提供的数据类型,包括
bigint
和 sql_variant。不能使用用户定义的数据类型。
length
nchar
、
nvarchar
、
char
、
varchar
、
binary
或
varbinary
数据类型的可选参数。
style
日期格式样式,借以将
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® SQL Server™
2000
使用其中的科威特算法。
重要 默认情况下,SQL Server 根据截止年份
2049
解释两位数字的年份。即,两位数字的年份
49
被解释为
2049
,而两位数字的年份
50
被解释为
1950
。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用
2030
作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改 SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。
当从
smalldatetime
转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从
datetime
或
smalldatetime
值进行转换时,可以通过使用适当的
char
或
varchar
数据类型长度来截断不需要的日期部分。
青苹果Web应用商店
https://webapp.taobao.com/
PHP/ASP.NET/ASP/UCHOME/DISCUZ! X系列网站开发,详细需求联系
QQ:8511978
查看全文
相关阅读:
HiLink & LiteOS & IoT芯片 让IoT开发简单高效
HiCar基本功能介绍
HiCar技术概述
docker 笔记 3
drools规则引擎笔记 与 代码demo
Spring Reactive Reactor WebFlux Flux Mono 是否能完全取代多线程编程 ?
webflux demo 1
阅后归档
阅后归档
POJ3252 Round Numbers(数位dp)
原文地址:https://www.cnblogs.com/Dicky/p/618453.html
最新文章
如何创建ABAP的text table
如何创建依赖于某时间段的ABAP视图
都在讲Redis主从复制原理,我来讲实践总结
华为云PB级数据库GaussDB(for Redis)揭秘第五期:高斯 Redis 在IM场景中的应用
看故事学Redis:再不懂,我怀疑你是假个开发
电商千万级交易的金手指:分布式事务管理
电商千万级交易的金手指:分布式事务管理
跟公司新招的这个“同事”搭档,工作搬砖太“自动化”了
带你走进与千万数据通信者共成长的“家园”
电影AI修复,让重温经典有了新的可能
热门文章
APP搜索如何又快又准?
Java 第十一届 蓝桥杯 省模拟赛 最大的元素距离
Java 第十一届 蓝桥杯 省模拟赛 递增序列
HarmonyOS技术特性
HarmonyOS系统概述
GPU 硬件虚拟化Hardware Virtualization
Ascend Pytorch算子功能验证
Ascend Pytorch算子适配层开发
Ascend昇腾计算
使用Runtime执行推理(C++)
Copyright © 2011-2022 走看看