惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
GRAHAM CLULEY
Recorded Future
Recorded Future
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 叶小钗
A
About on SuperTechFans
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
月光博客
月光博客
MongoDB | Blog
MongoDB | Blog
Apple Machine Learning Research
Apple Machine Learning Research
罗磊的独立博客
人人都是产品经理
人人都是产品经理
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
博客园 - Franky
Google DeepMind News
Google DeepMind News
Security Latest
Security Latest
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Project Zero
Project Zero
N
News and Events Feed by Topic
I
Intezer
C
Check Point Blog
V
Visual Studio Blog
T
Tenable Blog
博客园 - 司徒正美
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
PCI Perspectives
PCI Perspectives
H
Help Net Security
www.infosecurity-magazine.com
www.infosecurity-magazine.com
The Cloudflare Blog
SecWiki News
SecWiki News
Vercel News
Vercel News
爱范儿
爱范儿
Recent Announcements
Recent Announcements
Spread Privacy
Spread Privacy
T
Threatpost
Last Week in AI
Last Week in AI
V
V2EX
O
OpenAI News
M
MIT News - Artificial intelligence
博客园 - 【当耐特】
腾讯CDC
Forbes - Security
Forbes - Security
Microsoft Security Blog
Microsoft Security Blog
AI
AI
Hacker News - Newest:
Hacker News - Newest: "LLM"
F
Full Disclosure
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Palo Alto Networks Blog

博客园 - bobbychen

C++之不带指针类的设计——Boolean .ctor,.cctor 以及 对象的构造过程 C#中virtual 方法和abstract方法的区别 SQL循环插入批量数据 【VS.NET 调试异常】 CLR 无法从 COM 上下文 XXX 转换为 COM 上下文 XXX SQL重复记录查询 String.Format格式说明 C#数字格式化方法全面解析 HTML特殊字符 - 补遗 【Access】 LEFT OUTER JOIN 关联多表的查询语句 【转帖】C#与C Windows API数据类型对应关系 Visual Studio 进行单元测试时如何附加被测试文件的方法总结 【转帖】C# 与 C++ 数据类型对照 【.Net Compact Framework开发】 使用 Visual Studio 对移动项目进行Unit Testing的方法总结 【转帖】const 与 readonly 的区别 【转帖】解决继承窗体或用户控件时“visual继承当前被禁用,因为基类引用设备特定的组件或包含 p/invoke”问题 PowerDesigner实体模型CDM中关于建立Entity之间关系的备忘 【部署】Visual Studio 2008 打包部署.Net Framework 2.0 应用程序提示需要安装.Net Framework 3.5的解决方法 【Winform窗体控件开发】之五 实现类型转换器TypeConverterAttribute
SQL 使用CONVERT函数 格式化日期
bobbychen · 2011-04-21 · via 博客园 - bobbychen

将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。

CAST 语法:

CAST    (expression AS data_type [ (length ) ] )
 

CONVERT 语法:

CONVERT (data_type [ (length ) ] ,expression [ ,style ] )

参数

expression

任何有效的表达式

data_type

目标数据类型。这包括 xml、bigint 和 sql_variant。不能使用别名数据类型。有关可用数据类型的详细信息,请参阅数据类型 (Transact-SQL)

length

指定目标数据类型长度的可选整数。默认值为 30。

style

指定 CONVERT 函数如何转换 expression 的整数表达式。如果样式为 NULL,则返回 NULL。该范围是由 data_type 确定的。有关详细信息,请参阅“备注”部分。

返回类型

    返回转换为 data_type 的 expression。

Date 和 Time 样式

如果 expression 为 date 或 time 数据类型,则 style 可以为下表中显示的值之一。其他值作为 0 进行处理。SQL Server 使用科威特算法来支持阿拉伯样式的日期格式。

——————————————————————————————————————————————————————————————————————————————————

不带世纪数位 (yy)

带世纪数位 (yyyy) 标准 输入/输出 (3)
0 或 100 (1,2) 默认

mon dd yyyy hh:miAM(或 PM)

1 101 美国

mm/dd/yyyy

2 102 ANSI

yy.mm.dd

3 103 英国/法国

dd/mm/yyyy

4 104 德国

dd.mm.yy

5 105 意大利

dd-mm-yy

6 106 (1)

dd mon yy

7 107 (1)

mon dd, yy

8 108

hh:mi:ss

9 或 109 (1,2) 默认设置 + 毫秒

mon dd yyyy hh:mi:ss:mmmAM(或 PM)

10 110 美国

mm-dd-yy

11 111 日本

yy/mm/dd

12 112 ISO

yymmdd

yyyymmdd

13 或 113 (1,2) 欧洲默认设置 + 毫秒

dd mon yyyy hh:mi:ss:mmm(24h)

14 114

hh:mi:ss:mmm(24h)

20 或 120 (2) ODBC 规范

yyyy-mm-dd hh:mi:ss(24h)

21 或 121 (2) ODBC 规范(带毫秒)

yyyy-mm-dd hh:mi:ss.mmm(24h)

126 (4) ISO8601

yyyy-mm-ddThh:mi:ss.mmm(无空格)

127(6, 7) 带时区 Z 的 ISO8601。

yyyy-mm-ddThh:mi:ss.mmmZ(无空格)

130 (1,2) 回历 (5)

dd mon yyyy hh:mi:ss:mmmAM

131 (2) 回历 (5) dd/mm/yy hh:mi:ss:mmmAM

——————————————————————————————————————————————————————————————————————————————————

1 这些样式值将返回不确定的结果。包括所有 (yy)(不带世纪数位)样式和一部分 (yyyy)(带世纪数位)样式。

2 默认值(style010091091311320120 以及 21121)始终返回世纪数位 (yyyy)。

3 转换为 datetime 时输入;转换为字符数据时输出。

4 为用于 XML 而设计。对于从 datetime 或 smalldatetime 到字符数据的转换,其输出格式如上一个表所述。

5 回历是有多种变体的日历系统。SQL Server 使用科威特算法。

-- 默认
-- mm dd yyyy hh:mmPM/AM
SELECT CONVERT(varchar(100),GETDATE());
 
SELECT CONVERT(varchar(100),GETDATE(),0);
 
SELECT CONVERT(varchar(100),GETDATE(),100);
--
-- 美国
-- mm/dd/yy
SELECT CONVERT(varchar(100),GETDATE(),1);
-- mm/dd/yyyy
SELECT CONVERT(varchar(100),GETDATE(),101);
--
-- ANSI
-- yyyy.mm.dd
SELECT CONVERT(varchar(100),GETDATE(),2);
-- yy.mm.dd
SELECT CONVERT(varchar(100),GETDATE(),102);
--
-- 英国 / 法国
-- dd/mm/yy
SELECT CONVERT(varchar(100),GETDATE(),3);
-- dd/mm/yyyy
SELECT CONVERT(varchar(100),GETDATE(),103); 
--
-- 德国
-- dd.mm.yy
SELECT CONVERT(varchar(100),GETDATE(),4);
-- dd.mm.yyyy
SELECT CONVERT(varchar(100),GETDATE(),104); 
--
-- 意大利
-- dd-mm-yy
SELECT CONVERT(varchar(100),GETDATE(),5);
-- dd-mm-yyyy
SELECT CONVERT(varchar(100),GETDATE(),105); 
 
-- 
-- dd mm yy
SELECT CONVERT(varchar(100),GETDATE(),6);
-- dd mm yyyy
SELECT CONVERT(varchar(100),GETDATE(),106); 
 
--
-- mm dd, yy
SELECT CONVERT(varchar(100),GETDATE(),7);
-- mm dd, yyyy
SELECT CONVERT(varchar(100),GETDATE(),107); 
 
--
-- mon dd yyyy hh:mi:ss:mmmAM(或 PM)
SELECT CONVERT(varchar(100),GETDATE(),9);
 
SELECT CONVERT(varchar(100),GETDATE(),109); 
--
-- 美国
-- mm-dd-yy
SELECT CONVERT(varchar(100),GETDATE(),10);
-- mm-dd-yyyy
SELECT CONVERT(varchar(100),GETDATE(),110); 
--
-- 日本
-- yy/mm/dd
SELECT CONVERT(varchar(100),GETDATE(),11);
-- yyyy/mm/dd
SELECT CONVERT(varchar(100),GETDATE(),111); 
--
-- ISO
-- yymmdd
SELECT CONVERT(varchar(100),GETDATE(),12);
-- yyyymmdd
SELECT CONVERT(varchar(100),GETDATE(),112); 
--
-- 欧洲默认设置 + 毫秒
-- dd mon yyyy hh:mi:ss:mmm(24h)
SELECT CONVERT(varchar(100),GETDATE(),13);
 
SELECT CONVERT(varchar(100),GETDATE(),113); 
 
--
-- hh:mi:ss:mmm(24h)
SELECT CONVERT(varchar(100),GETDATE(),14);
 
SELECT CONVERT(varchar(100),GETDATE(),114); 
--
-- ODBC 规范
-- yyyy-mm-dd hh:mi:ss(24h)
SELECT CONVERT(varchar(100),GETDATE(),20);
 
SELECT CONVERT(varchar(100),GETDATE(),120); 
--
-- ODBC 规范(带毫秒)
-- yyyy-mm-dd hh:mi:ss.mmm(24h)
SELECT CONVERT(varchar(100),GETDATE(),21);
 
SELECT CONVERT(varchar(100),GETDATE(),121); 
--
-- ISO8601
-- yyyy-mm-ddThh:mi:ss.mmm(无空格)
SELECT CONVERT(varchar(100),GETDATE(),126);
--
-- 带时区 Z 的 ISO8601。
-- yyyy-mm-ddThh:mi:ss.mmmZ(无空格)
SELECT CONVERT(varchar(100),GETDATE(),127);
--
-- 回历 (5)
-- dd mon yyyy hh:mi:ss:mmmAM
SELECT CONVERT(varchar(100),GETDATE(),130);
--
-- 回历 (5)
-- dd/mm/yy hh:mi:ss:mmmAM
SELECT CONVERT(varchar(100),GETDATE(),131);