主要描述的是SQL Server使用convert取得datetime日期数据的实际操作流程,在实际操作中用SQL Server数据库中用convert来获取datetime日期数据,以下实例包含各种日期格式的转换。

语句及查询结果:

  1. Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
  2. Select CONVERT(varchar(100), GETDATE(), 1): 05/16/0

SQL Server使用convert来取得datetime日期数据,以下实例包含各种日期格式的转换

语句及查询结果:

  1. Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
  2. Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
  3. Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
  4. Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
  5. Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
  6. Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
  7. Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
  8. Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
  9. Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
  10. Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
  11. Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
  12. Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
  13. Select CONVERT(varchar(100), GETDATE(), 12): 060516
  14. Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
  15. Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
  16. Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
  17. Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
  18. Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
  19. Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
  20. Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
  21. Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
  22. Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
  23. Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
  24. Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
  25. Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
  26. Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
  27. Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
  28. Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
  29. Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
  30. Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
  31. Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
  32. Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
  33. Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
  34. Select CONVERT(varchar(100), GETDATE(), 112): 20060516
  35. Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
  36. Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
  37. Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
  38. Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
  39. Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
  40. Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
  41. Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

说明:

SQL Server使用convert:

  1. 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 数据类型长度来截断不需要的日期部分。

转载自 这里

sqlserver中DATE类型的数据转化 CONVERT的更多相关文章

  1. copy sqlserver中DATE类型的数据转化 CONVERT

    copy http://www.cnblogs.com/benwu/p/3939044.html 主要描述的是SQL Server使用convert取得datetime日期数据的实际操作流程,在实际操 ...

  2. 向mysql中插入Date类型的数据

    先看数据库表的定义 date字段为sql.date类型.我要向其中插入指定的日期和当前日期. 一.插入当前日期 思路:先获取当前系统,在将当前系统时间转换成sql类型的时间,然后插入数据库.代码如下 ...

  3. oracle中时间戳转为Date类型的数据

    问题描述: 一个表中原本应该存放date类型的数据,但是不知道之前哪位大仙把两个字段的类型建成了NUMBER类型的了,这样在后台看时间肯定不方便.现在需要改成date类型,但是现在库中是有数据的,不能 ...

  4. Java中Date类型详解

    一.Date类型的初始化 1. Date(int year, int month, int date); 直接写入年份是得不到正确的结果的. 因为java中Date是从1900年开始算的,所以前面的第 ...

  5. ES数据-MySql处理Date类型的数据导入处理

    用ES的小伙伴们,相信大家都遇到过Mapping处理Date类型的数据头疼问题吧. 不用头疼了,我来给你提供一种解决方案: 1.Maping定义为: {  "mappings": ...

  6. SpringMVC返回Json,自定义Json中Date类型格式

    http://www.cnblogs.com/jsczljh/p/3654636.html —————————————————————————————————————————————————————— ...

  7. 【转载】sqlserver中小数类型float和deciaml类型比较

    在sqlserver数据库中,float类型和double类型都可以用来表示小数类型,float类型是一种近似数值的小数类型,而decimal类型则是精确数值的小数类型.如果需要在sqlserver数 ...

  8. 使用js处理后台返回的Date类型的数据

    从后台返回的日期类型的数据,如果直接在前端进行显示的话,显示的就是一个从 1970-01-01 00:00:00到现在所经过的毫秒数,而在大多数业务中都不可能显示这个毫秒数,大多数都是显示一个正常的日 ...

  9. Java中double类型的数据精确到小数点后两位

    Java中double类型的数据精确到小数点后两位 多余位四舍五入,四种方法 一: double f = 111231.5585;BigDecimal b = new BigDecimal(f); d ...

随机推荐

  1. Django分析之使用redis缓存服务器

    时间长没有更新了,这段时间一直忙着一个项目,今天就记录一个现在经常会用到的技术吧. redis相信大家都很熟悉了,和memcached一样是一个高性能的key-value数据库,至于什么是缓存服务器, ...

  2. 基于淘宝弹性布局方案lib-flexible的问题研究

    上篇文章<淘宝弹性布局方案lib-flexible实践>结合一个简单的实例,说明了lib-flexible的基本用法,但是lib-flexible的这种适配方式在适配的时候会修改viewp ...

  3. 了解学习JS中this的指向

    [转] 首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象(这句话有些问题,后面会解释为什么会有问 ...

  4. cesiumjs开发实践之坐标转换

    cesium中常用的坐标有两种WGS84地理坐标系和笛卡尔空间坐标系.我们平时常用的以经纬度来指明一个地点就是用的WGS84坐标,笛卡尔空间坐标系常用来做一些空间位置变换如平移旋转缩放等等. 笛卡尔空 ...

  5. java并发编程(六)Runnable和Thread实现多线程的区别

    http://blog.csdn.net/ns_code/article/details/17161237

  6. MongoDB数据库的操作,增删改查

    在student集合中插入一些数据 db.student.insert({ "学号":10010, "姓名":"德莱文", "年龄 ...

  7. Sql 常见问题

    join on and vs join on where SELECT * FROM Orders LEFT JOIN OrderLines ON OrderLines.OrderID=Orders. ...

  8. [lua大坑]一个莫名其妙的lua执行时崩溃引出的堆栈大小问题

    这是一个坑,天坑!如果不是我随手删除了一个本地变量,这个问题直到现在我应该也没有头绪. 首先,写了一个新的lua脚本,载入,执行.在执行的时候,出了这么一个莫名其妙的问题: EXC_BAD_ACCES ...

  9. Quartz作业调度框架及时间表达式的含义和语法

    Quartz 是一个开源的作业调度框架,它完全由 Java 写成,并设计用于 J2SE 和 J2EE 应用中.它提供了巨大的灵活性而不牺牲简单性.你能够用它来为执行一个作业而创建简单的或复杂的调度.本 ...

  10. Update Request

    public function update(UpdateAppointmentRequest $request) { try { $data = array_filter($request-> ...