zoukankan      html  css  js  c++  java
  • sql date()函数,时间格式

    (1)、GETDATE() 函数从 SQL Server 返回当前的日期和时间。

    语法

    GETDATE()

    实例

    下面是 SELECT 语句:

    SELECT GETDATE() AS CurrentDateTime

    结果如下所示:

    CurrentDateTime
    2008-11-11 12:45:34.243

    注释:上面的时间部分精确到毫秒。

    (2)、

    DATEPART() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。

    语法

    DATEPART(datepart,date)

    date 参数是合法的日期表达式。datepart 参数可以是下列的值:

    datepart缩写
    yy, yyyy
    季度 qq, q
    mm, m
    年中的日 dy, y
    dd, d
    wk, ww
    星期 dw, w
    小时 hh
    分钟 mi, n
    ss, s
    毫秒 ms
    微妙 mcs
    纳秒 ns

    实例

    假设我们有如下的 "Orders" 表:

    OrderIdProductNameOrderDate
    1 Jarlsberg Cheese 2008-11-11 13:23:44.657

    下面是 SELECT 语句:

    SELECT DATEPART(yyyy,OrderDate) AS OrderYear, DATEPART(mm,OrderDate) AS OrderMonth, DATEPART(dd,OrderDate) AS OrderDay, FROM Orders WHERE OrderId=1

    结果如下所示:

    OrderYearOrderMonthOrderDay
    2008 11 11

     (3)、DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。

    date 参数是合法的日期。format 规定日期/时间的输出格式。

    可以使用的格式有:

    格式描述
    %a 缩写星期名
    %b 缩写月名
    %c 月,数值
    %D 带有英文前缀的月中的天
    %d 月的天,数值(00-31)
    %e 月的天,数值(0-31)
    %f 微秒
    %H 小时(00-23)
    %h 小时(01-12)
    %I 小时(01-12)
    %i 分钟,数值(00-59)
    %j 年的天(001-366)
    %k 小时(0-23)
    %l 小时(1-12)
    %M 月名
    %m 月,数值(00-12)
    %p AM 或 PM
    %r 时间,12-小时(hh:mm:ss AM 或 PM)
    %S 秒(00-59)
    %s 秒(00-59)
    %T 时间, 24-小时(hh:mm:ss)
    %U 周(00-53)星期日是一周的第一天
    %u 周(00-53)星期一是一周的第一天
    %V 周(01-53)星期日是一周的第一天,与 %X 使用
    %v 周(01-53)星期一是一周的第一天,与 %x 使用
    %W 星期名
    %w 周的天(0=星期日, 6=星期六)
    %X 年,其中的星期日是周的第一天,4 位,与 %V 使用
    %x 年,其中的星期一是周的第一天,4 位,与 %v 使用
    %Y 年,4 位
    %y 年,2 位

    实例

    下面的脚本使用 DATE_FORMAT() 函数来显示不同的格式。我们使用 NOW() 来获得当前的日期/时间:

    DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p') DATE_FORMAT(NOW(),'%m-%d-%Y') DATE_FORMAT(NOW(),'%d %b %y') DATE_FORMAT(NOW(),'%d %b %Y %T:%f')

    结果如下所示:

    Nov 04 2008 11:45 PM 11-04-2008 04 Nov 08 04 Nov 2008 11:45:34:243
    (4)DATEADD() 函数在日期中添加或减去指定的时间间隔。

    date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。

    datepart 参数可以是下列的值:

    DATEDIFF() 函数返回两个日期之间的天数。

    datepart缩写
    yy, yyyy
    季度 qq, q
    mm, m
    年中的日 dy, y
    dd, d
    wk, ww
    星期 dw, w
    小时 hh
    分钟 mi, n
    ss, s
    毫秒 ms
    微妙 mcs
    纳秒 ns

    实例

    假设我们有如下的 "Orders" 表:

    OrderIdProductNameOrderDate
    1 Jarlsberg Cheese 2008-11-11 13:23:44.657

    现在,我们想要向 "OrderDate" 添加 45 天,这样就可以找到付款日期。

    我们使用下面的 SELECT 语句:

    SELECT OrderId,DATEADD(day,45,OrderDate) AS OrderPayDate FROM Orders

    结果:

    OrderIdOrderPayDate

    1

    2008-12-26 13:23:44.657

    (5)DATEDIFF() 函数返回两个日期之间的天数。

    (6)CONVERT() 函数是把日期转换为新数据类型的通用函数。

           CONVERT() 函数可以用不同的格式显示日期/时间数据。

    语法

    CONVERT(data_type(length),expression,style)

    下面的表格展示了 datetime 或 smalldatetime 转换为字符数据的 style 值:

    值 (世纪 yy)值 (世纪 yyyy)输入/输出标准
    - 0 or 100 mon dd yyyy hh:miAM (or PM) Default
    1 101 mm/dd/yy USA
    2 102 yy.mm.dd ANSI
    3 103 dd/mm/yy British/French
    4 104 dd.mm.yy German
    5 105 dd-mm-yy Italian
    6 106 dd mon yy  
    7 107 Mon dd, yy  
    8 108 hh:mm:ss  
    - 9 or 109 mon dd yyyy hh:mi:ss:mmmAM (or PM) Default+millisec
    10 110 mm-dd-yy USA
    11 111 yy/mm/dd Japan
    12 112 yymmdd ISO
    - 13 or 113 dd mon yyyy hh:mi:ss:mmm (24h)  
    14 114 hh:mi:ss:mmm (24h)  
    - 20 or 120 yyyy-mm-dd hh:mi:ss (24h)  
    - 21 or 121 yyyy-mm-dd hh:mi:ss.mmm (24h)  
    - 126 yyyy-mm-ddThh:mi:ss.mmm (no spaces) ISO8601
    - 130 dd mon yyyy hh:mi:ss:mmmAM Hijiri
    - 131 dd/mm/yy hh:mi:ss:mmmAM Hijiri

    实例

    下面的脚本使用 CONVERT() 函数来显示不同的格式。我们将使用 GETDATE() 函数来获得当前的日期/时间:

    CONVERT(VARCHAR(19),GETDATE()) CONVERT(VARCHAR(10),GETDATE(),10) CONVERT(VARCHAR(10),GETDATE(),110) CONVERT(VARCHAR(11),GETDATE(),6) CONVERT(VARCHAR(11),GETDATE(),106) CONVERT(VARCHAR(24),GETDATE(),113)

    结果如下所示:

    Nov 04 2011 11:45 PM 11-04-11 11-04-2011 04 Nov 11 04 Nov 2011 04 Nov 2011 11:45:34:243
  • 相关阅读:
    nmon监控及分析(转)
    Python资源大全
    pyqt4使用简易笔记
    windows下 使用pyinstaller 打包os.Popen()问题
    用pyautogui操作windows
    jmeter 报错:java.net.BindException: Address already in use: connect
    jmeter 报错Non HTTP response code: org.apache.http.conn.ConnectTimeoutException
    vue父子组件通信
    centos6.7安装mysql-5.7
    linux下 多python环境 修改默认python2为python3
  • 原文地址:https://www.cnblogs.com/nxxshxf/p/5627385.html
Copyright © 2011-2022 走看看