zoukankan      html  css  js  c++  java
  • SQL获取年月日时分秒的方法

    方法一:利用DATENAME

    在SQL数据库中,DATENAME(datetype,date)函数的作用是从日期中提取指定部分数据,其返回类型是nvarchar.datetype类型见附表1.

    SELECT DATENAME(year,GETDATE())+'-'+ DATENAME(MONTH,GETDATE())+'-'+ DATENAME(DAY,GETDATE())
    SELECT DATENAME(yyyy,GETDATE())+'-'+ DATENAME(MM,GETDATE())+'-'+ DATENAME(dd,GETDATE())

    附表1

    日期部分
    缩写
    year yy, yyyy        
    quarter qq, q
    month mm,m
    dayofyear dy, y
    day dd,d
    week wk,ww
    weeekday dw
    hour hh
    minute mi,n
    second ss,s
    millisecond ms

    方法二:利用CONVERT

    CONVERT(type(length),date,style) 函数是把日期转换为新数据类型的通用函数,可以用不同的格式显示日期/时间数据。style类型见附表2,另附件3为CONVERT()用法

    SELECT CONVERT(VARCHAR(20),YEAR(GETDATE())) +'-'+ CONVERT(VARCHAR(20),MONTH(GETDATE()))+'-'+ CONVERT(VARCHAR(20),DAY(GETDATE()))
    SELECT CONVERT(VARCHAR(20),GETDATE(),23)

    下面说两种计算结果不能发生错误方法:

    SELECT  YEAR(GETDATE()) +'-'+  MONTH(GETDATE()) +'-'+  DAY(GETDATE()) 
    SELECT DATEPART(yyyy,GETDATE())+'-'+ DATEPART(MM,GETDATE())+'-'+ DATEPART(dd,GETDATE())

    因为YEAR(),MONTH(),DAY(),DATEPART()返回值都是INT类型,所以结果是相加的和。

    不会关心中间  ‘-’  的值,如下:

    SELECT  1+ '-'+  2 +'-'+ 3
    SELECT  1+ 2 + 3

    附表2

    style(2位表年份)   style(4位表年份)        Style 格式
      100或0 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
      108或8或24 hh:mm:ss(无年份月日)
      109或9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)   
    10 110 美国 mm-dd-yy     
    11 111 日本 yy/mm/dd
    12 112 ISO yymmdd
      113或13 欧洲默认 dd mon yyyy hh:mm:ss:mmm(24h)
    14 114 hh:mi:ss:mmm(24h)(无年份月日)
      120或20 ODBC yyyy-mm-dd hh:mi:ss(24h)
      121或21或25 yyyy-mm-dd hh:mi:ss.mmm(24h)
      23 yyyy-mm-dd
      126 yyyy-mm-ddThh:mm:ss.mmm(没有空格)
      130 dd mon yyyy hh:mi:ss:mmmAM
      131 dd/mm/yy hh:mi:ss:mmmAM

    附件3 CONVERT()用法

    SELECT CONVERT(varchar(100), GETDATE(), 0)--  08 25 2017 10:26AM
    SELECT CONVERT(varchar(100), GETDATE(), 100)--08 25 2017 10:26AM
    SELECT CONVERT(varchar(100), GETDATE(), 1)--  08/25/17
    SELECT CONVERT(varchar(100), GETDATE(), 101)--08/25/2017
    SELECT CONVERT(varchar(100), GETDATE(), 2)--  17.08.25
    SELECT CONVERT(varchar(100), GETDATE(), 102)--2017.08.25
    SELECT CONVERT(varchar(100), GETDATE(), 3)--  25/08/17
    SELECT CONVERT(varchar(100), GETDATE(), 103)--25/08/2017
    SELECT CONVERT(varchar(100), GETDATE(), 4)--  25.08.17
    SELECT CONVERT(varchar(100), GETDATE(), 104)--25.08.2017
    SELECT CONVERT(varchar(100), GETDATE(), 5)--  25-08-17
    SELECT CONVERT(varchar(100), GETDATE(), 105)--25-08-2017
    SELECT CONVERT(varchar(100), GETDATE(), 6)--  25 08 17
    SELECT CONVERT(varchar(100), GETDATE(), 106)--25 08 2017
    SELECT CONVERT(varchar(100), GETDATE(), 7)--  08 25, 17
    SELECT CONVERT(varchar(100), GETDATE(), 107)--08 25, 2017
    SELECT CONVERT(varchar(100), GETDATE(), 8)--  10:25:11
    SELECT CONVERT(varchar(100), GETDATE(), 108)--10:25:11
    SELECT CONVERT(varchar(100), GETDATE(), 9)--  08 25 2017 10:25:54:397AM
    SELECT CONVERT(varchar(100), GETDATE(), 109)--08 25 2017 10:25:54:397AM
    SELECT CONVERT(varchar(100), GETDATE(), 10)-- 08-25-17
    SELECT CONVERT(varchar(100), GETDATE(), 110)--08-25-2017
    SELECT CONVERT(varchar(100), GETDATE(), 11)-- 17/08/25
    SELECT CONVERT(varchar(100), GETDATE(), 111)--2017/08/25
    SELECT CONVERT(varchar(100), GETDATE(), 12)-- 170825
    SELECT CONVERT(varchar(100), GETDATE(), 112)--20170825
    SELECT CONVERT(varchar(100), GETDATE(), 13)-- 25 08 2017 10:30:25:533
    SELECT CONVERT(varchar(100), GETDATE(), 113)--25 08 2017 10:30:25:533
    SELECT CONVERT(varchar(100), GETDATE(), 14)-- 10:31:18:553
    SELECT CONVERT(varchar(100), GETDATE(), 114)--10:31:18:553
    SELECT CONVERT(varchar(100), GETDATE(), 20)-- 2017-08-25 10:31:18
    SELECT CONVERT(varchar(100), GETDATE(), 120)--2017-08-25 10:31:18
    SELECT CONVERT(varchar(100), GETDATE(), 21)-- 2017-08-25 10:32:22.950
    SELECT CONVERT(varchar(100), GETDATE(), 121)--2017-08-25 10:32:22.950
    SELECT CONVERT(varchar(100), GETDATE(), 22)-- 08/25/17 10:32:22 AM
    SELECT CONVERT(varchar(100), GETDATE(), 23)-- 2017-08-25
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 8)--  10:25:11
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 108)--10:25:11
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 24)-- 10:33:38
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 21)-- 2017-08-25 10:32:22.950
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 121)--2017-08-25 10:32:22.950
    SELECT CONVERT(varchar(100), DATEADD(hh,12,GETDATE()), 25)-- 2017-08-25 10:33:49.947
    SELECT CONVERT(varchar(100), GETDATE(), 126)--2017-08-25T10:34:39.913
    SELECT CONVERT(varchar(100), GETDATE(), 130)--3 ?? ????? 1438 10:34:52:140AM
    SELECT CONVERT(varchar(100), GETDATE(), 131)--3/12/1438 10:35:01:460AM

    出处:https://blog.csdn.net/ugug654/article/details/77600218

    您的资助是我最大的动力!
    金额随意,欢迎来赏!
    款后有任何问题请给我留言。

    如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的推荐按钮。
    如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的关注我。(●'◡'●)

    如果你觉得本篇文章对你有所帮助,请给予我更多的鼓励,求打             付款后有任何问题请给我留言!!!

    因为,我的写作热情也离不开您的肯定支持,感谢您的阅读,我是【Jack_孟】!

  • 相关阅读:
    jenkins与gitlab集成,分支提交代码后自动构建任务(六)
    MySQL配置参数sync_binlog说明
    jenkins部署java项目(五)
    Mac OS X 中安装JDK 7
    centos 使用pip安装mysql-python
    CentOS6.4下安装TeamViewer8
    adb & adb shell 相关命令
    mac下限速
    mac 下 word 2011 使用笔记
    python twisted启动定时服务
  • 原文地址:https://www.cnblogs.com/mq0036/p/14720773.html
Copyright © 2011-2022 走看看