热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

sql中datetime转换成varchar字符型多种方法

文章来自一篇国外的网站讲述了sql中datetime日期时间类型转换成varchar字符类型的方法,有需要的朋友可以参考一下下哈。

文章来自一篇国外的网站讲述了sql中datetime日期时间类型转换成varchar字符类型的方法,有需要的朋友可以参考一下下哈。

写了这个小桌面程序,以帮助我记得是什么风格112没有,或如何得到HH:MM AM / PM一个DATETIME列。基本上,它是有效的样式编号填充一个表,然后通过这些循环,并产生每个样式的结果(和产生这一结果的语法),鉴于当前的。
是的,它使用游标。这是一个辅助功能,不是你会使用生产环境中的一部分,所以我不认为对性能的影响应该是一个大问题。但如果你有

代码如下

USE tempdb;
GO
CREATE PROCEDURE dbo.help_DateTimeFormats
@styleID TINYINT = NULL
AS
BEGIN
SET NOCOUNT ON;
IF OBJECTPROPERTY
(
OBJECT_ID('dbo.DateTimeFormats'),
'IsUserTable'
) = 1
BEGIN
DROP TABLE dbo.DateTimeFormats;
END
CREATE TABLE dbo.DateTimeFormats
(
styleID TINYINT PRIMARY KEY,
outputLength TINYINT,
outputSyntax VARCHAR(64),
outputSample VARCHAR(255)
);
INSERT dbo.DateTimeFormats(styleID, outputLength)
SELECT style = 0, outputLength = 19
UNION SELECT 1, 8
UNION SELECT 2, 8
UNION SELECT 3, 8
UNION SELECT 4, 8
UNION SELECT 5, 8
UNION SELECT 6, 9
UNION SELECT 7, 10
UNION SELECT 8, 8
UNION SELECT 9, 26
UNION SELECT 10, 8
UNION SELECT 11, 8
UNION SELECT 12, 6
UNION SELECT 13, 24
UNION SELECT 14, 12
UNION SELECT 20, 19
UNION SELECT 21, 23
UNION SELECT 22, 20
UNION SELECT 23, 10
UNION SELECT 24, 8
UNION SELECT 25, 23
UNION SELECT 100, 19
UNION SELECT 101, 10
UNION SELECT 102, 10
UNION SELECT 103, 10
UNION SELECT 104, 10
UNION SELECT 105, 10
UNION SELECT 106, 11
UNION SELECT 107, 12
UNION SELECT 108, 8
UNION SELECT 109, 26
UNION SELECT 110, 10
UNION SELECT 111, 10
UNION SELECT 112, 8
UNION SELECT 113, 24
UNION SELECT 114, 12
UNION SELECT 120, 19
UNION SELECT 121, 23
UNION SELECT 126, 23
UNION SELECT 130, 32
UNION SELECT 131, 25;
IF CHARINDEX('SQL Server 2005', @@VERSION) > 0
INSERT dbo.DateTimeFormats(styleID, outputLength)
SELECT 127, 23; -- 127 is new in 2005
UPDATE dbo.DateTimeFormats
SET outputSyntax = 'CONVERT(CHAR('
+ RTRIM(outputLength) + '), CURRENT_TIMESTAMP, '
+ RTRIM(styleID) + ')';
DECLARE
@sql VARCHAR(1024),
@style TINYINT,
@syntax VARCHAR(64);
DECLARE c CURSOR
LOCAL FORWARD_ONLY STATIC READ_ONLY FOR
SELECT styleID, outputSyntax
FROM dbo.DateTimeFormats;
OPEN c; FETCH NEXT FROM c INTO @style, @syntax;
WHILE (@@FETCH_STATUS = 0)
BEGIN
SET @sql = 'UPDATE dbo.DateTimeFormats
SET outputSample = ' + @syntax + '
WHERE styleID = ' + RTRIM(@style) + ';';
EXEC(@sql);
FETCH NEXT FROM c INTO @style, @syntax;
END
CLOSE c; DEALLOCATE c;
SELECT
styleID,
outputSample,
outputSyntax
FROM
dbo.DateTimeFormats
WHERE
styleID = COALESCE(@styleID, styleID);
DROP TABLE dbo.DateTimeFormats;
END
GO
EXEC dbo.help_DateTimeFormats;
EXEC dbo.help_DateTimeFormats @styleID = 112;
-- DROP PROCEDURE dbo.help_DateTimeFormats;

The output should look like this:

0

Feb 22 2006 4:26PM
CONVERT(CHAR(19), CURRENT_TIMESTAMP, 0)

1
02/22/06
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 1)

2
06.02.22
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 2)

3
22/02/06
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 3)

4
22.02.06
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 4)

5
22-02-06
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 5)

6
22 Feb 06
CONVERT(CHAR(9), CURRENT_TIMESTAMP, 6)

7
Feb 22, 06
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 7)

8
16:26:08
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 8)

9
Feb 22 2006 4:26:08:020PM
CONVERT(CHAR(26), CURRENT_TIMESTAMP, 9)

10
02-22-06
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 10)

11
06/02/22
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 11)

12
060222
CONVERT(CHAR(6), CURRENT_TIMESTAMP, 12)

13
22 Feb 2006 16:26:08:020
CONVERT(CHAR(24), CURRENT_TIMESTAMP, 13)

14
16:26:08:037
CONVERT(CHAR(12), CURRENT_TIMESTAMP, 14)

20
2006-02-22 16:26:08
CONVERT(CHAR(19), CURRENT_TIMESTAMP, 20)

21
2006-02-22 16:26:08.037
CONVERT(CHAR(23), CURRENT_TIMESTAMP, 21)

22
02/22/06 4:26:08 PM
CONVERT(CHAR(20), CURRENT_TIMESTAMP, 22)

23
2006-02-22
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 23)

24
16:26:08
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 24)

25
2006-02-22 16:26:08.037
CONVERT(CHAR(23), CURRENT_TIMESTAMP, 25)

100
Feb 22 2006 4:26PM
CONVERT(CHAR(19), CURRENT_TIMESTAMP, 100)

101
02/22/2006
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 101)

102
2006.02.22
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 102)

103
22/02/2006
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 103)

104
22.02.2006
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 104)

105
22-02-2006
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 105)

106
22 Feb 2006
CONVERT(CHAR(11), CURRENT_TIMESTAMP, 106)

107
Feb 22, 2006
CONVERT(CHAR(12), CURRENT_TIMESTAMP, 107)

108
16:26:08
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 108)

109
Feb 22 2006 4:26:08:067PM
CONVERT(CHAR(26), CURRENT_TIMESTAMP, 109)

110
02-22-2006
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 110)

111
2006/02/22
CONVERT(CHAR(10), CURRENT_TIMESTAMP, 111)

112
20060222
CONVERT(CHAR(8), CURRENT_TIMESTAMP, 112)

113
22 Feb 2006 16:26:08:067
CONVERT(CHAR(24), CURRENT_TIMESTAMP, 113)

114
16:26:08:067
CONVERT(CHAR(12), CURRENT_TIMESTAMP, 114)

120
2006-02-22 16:26:08
CONVERT(CHAR(19), CURRENT_TIMESTAMP, 120)

121
2006-02-22 16:26:08.080
CONVERT(CHAR(23), CURRENT_TIMESTAMP, 121)

126
2006-02-22T16:26:08.080
CONVERT(CHAR(23), CURRENT_TIMESTAMP, 126)

127
2006-02-22T16:26:08.080
CONVERT(CHAR(23), CURRENT_TIMESTAMP, 127)

130
24 ???? 1427 4:26:08:080PM
CONVERT(CHAR(32), CURRENT_TIMESTAMP, 130)

131
24/01/1427 4:26:08:080PM
CONVERT(CHAR(25), CURRENT_TIMESTAMP, 131)


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文介绍了brain的意思、读音、翻译、用法、发音、词组、同反义词等内容,以及脑新东方在线英语词典的相关信息。还包括了brain的词汇搭配、形容词和名词的用法,以及与brain相关的短语和词组。此外,还介绍了与brain相关的医学术语和智囊团等相关内容。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • Echarts图表重复加载、axis重复多次请求问题解决记录
    文章目录1.需求描述2.问题描述正常状态:问题状态:3.解决方法1.需求描述使用Echats实现了一个中国地图:通过选择查询周期&#x ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • Python字典推导式及循环列表生成字典方法
    本文介绍了Python中使用字典推导式和循环列表生成字典的方法,包括通过循环列表生成相应的字典,并给出了执行结果。详细讲解了代码实现过程。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
author-avatar
灬耗丨子灬
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有