zoukankan      html  css  js  c++  java
  • sqlserver中对时间类型的字段转换

    获取当前日期利用 convert 来转换成我们需要的datetime格式.

    select CONVERT(varchar(12) , getdate(), 112 )

    20040912
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 102 )

    2004.09.12
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 101 )

    09/12/2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 103 )

    12/09/2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 104 )

    12.09.2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 105 )

    12-09-2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 106 )

    12 09 2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 107 )

    09 12, 2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 108 )

    11:06:08
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 109 )

    09 12 2004 1
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 110 )

    09-12-2004
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 113 )

    12 09 2004 1
    ------------------------------------------------------------

    select CONVERT(varchar(12) , getdate(), 114 )

    11:06:08.177
    ------------------------------------------------------------

    declare @dateTime DateTime--定义一个datetime的变量
    set @dateTime=getdate(); --获取系统当前时间,并赋值给@dateTime字段

    --短日期格式:yyyy-m-d

    SELECT REPLACE(CONVERT(varchar(10),@dateTime,120),N'-0','-')


    --长日期格式:yyyy年mm月dd日

    SELECT STUFF(STUFF(CONVERT(char(8),@dateTime,112),5,0,N''),8,0,N'')+N''


    --长日期格式:yyyy年m月d日

    SELECT DATENAME(Year,@dateTime)+N''+CAST(DATEPART(Month,@dateTime) AS varchar)+N''+DATENAME(Day,@dateTime)+N''


    --完整日期+时间格式:yyyy-mm-dd hh:mi:ss:mmm

    SELECT CONVERT(char(11),@dateTime,120)+CONVERT(char(12),@dateTime,114)


    ------------------------------------------------------------------------------------------------

    2、日期推算处理

    DECLARE @dt datetime
    SET @dt=GETDATE()
    DECLARE @number int
    SET @number=3


      1.指定日期该年的第一天或最后一天
      1.1 年的第一天

    SELECT CONVERT(char(5),@dt,120)+'1-1'


      1.2 年的最后一天

    SELECT CONVERT(char(5),@dt,120)+'12-31'


      2.指定日期所在季度的第一天或最后一天
      2.1 季度的第一天

    SELECT CONVERT(datetime,CONVERT(char(8),DATEADD(Month,DATEPART(Quarter,@dt)*3-Month(@dt)-2,
    @dt),120)+'1')

      2.2 季度的最后一天(CASE判断法)

    SELECT CONVERT(datetime,CONVERT(char(8),DATEADD(Month,DATEPART(Quarter,@dt)*3-Month(@dt),@dt),120)+CASE WHEN DATEPART(Quarter,@dt) in(1,4)THEN '31'ELSE '30END)


      2.3 季度的最后一天(直接推算法)

    SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1+DATEPART(Quarter,@dt)*3-Month(@dt),@dt),120)+'1')


      3.指定日期所在月份的第一天或最后一天
      3.1 月的第一天

    SELECT CONVERT(datetime,CONVERT(char(8),@dt,120)+'1')


      3.2 月的最后一天

    SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'1')


      3.3 月的最后一天(容易使用的错误方法)

    SELECT DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))


      3.4 指定日期所在周的任意一天

    SELECT DATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)


      5.指定日期所在周的任意星期几
      5.1 星期天做为一周的第1天

    SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)


      5.2 星期一做为一周的第1天

    SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)
  • 相关阅读:
    一种解决h5页面背景音乐不能自动播放的方案
    VUE中的v-if与v-show
    setInterval(code, time)中code传递参数办法
    CSS——图片替换方法比较
    JSON(三)——java中对于JSON格式数据的解析之json-lib与jackson
    JSON(二)——JavaScript中js对象与JSON格式字符串的相互转换
    JSON(一)——JSON与JavaScript的关系
    详解Ajax请求(四)——多个异步请求的执行顺序
    详解Ajax请求(三)——jQuery对Ajax的实现及serialize()函数对于表单域控件参数提交的使用技巧
    详解Ajax请求(二)——异步请求原理的分析
  • 原文地址:https://www.cnblogs.com/Annayang/p/3807725.html
Copyright © 2011-2022 走看看