zoukankan      html  css  js  c++  java
  • C#/JavaScript/SqlServer 对日期时间的操作整理汇总

         前言:针对C#/JavaScript/SqlServer常用的对日期时间的操作函数抽时间做了一个整理,网络上有许多,但是许多都不全,这些都是时间日期常用的一些操作!

    一、C# 常用日期时间操作

    //获取日期+时间
    DateTime.Now.ToString();            // 2008-9-4 20:02:10
    DateTime.Now.ToLocalTime().ToString();        // 2008-9-4 20:12:12
    DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 24小时制
    DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")  12小时制
    //获取日期
    DateTime.Now.ToLongDateString().ToString();    // 2008年9月4日
    DateTime.Now.ToShortDateString().ToString();    // 2008-9-4
    DateTime.Now.ToString("yyyy-MM-dd");        // 2008-09-04
    DateTime.Now.Date.ToString();            // 2008-9-4 0:00:00
    //获取时间
    DateTime.Now.ToLongTimeString().ToString();   // 20:16:16
    DateTime.Now.ToShortTimeString().ToString();   // 20:16
    DateTime.Now.ToString("hh:mm:ss");        // 08:05:57
    DateTime.Now.TimeOfDay.ToString();        // 20:33:50.7187500
    //其他
    //n为一个数,可以数整数,也可以事小数
    DateTime.Now.AddYears(n).ToString();   //时间加n年
    DateTime.Now.AddDays(n).ToString();   //加n天
    DateTime.Now.AddHours(n).ToString();   //加n小时
    DateTime.Now.AddMonths(n).ToString();   //加n个月
    DateTime.Now.AddSeconds(n).ToString();   //加n秒
    DateTime.Now.AddMinutes(n).ToString();   //加n分

    DateTime lastMonth = DateTime.Now.AddMonths(-1);
    string LastMonth_firstDay = lastMonth.AddDays(1 - lastMonth.Day).ToString("yyyy-MM-dd");//获取上个月的第一天
    string LastMonth_lastDay = lastMonth.AddDays(1 - lastMonth.Day).AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd"); //获取上个月的最后一天

    DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));  //本周周一
    DateTime endWeek = startWeek.AddDays(6);  //本周周日

     DateTime startMonth = dt.AddDays(1 - dt.Day);  //本月月初
    DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);  //本月月末
    //DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1);  //本月月末

    DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day);  //本季度初
    DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1);  //本季度末

    DateTime startYear = new DateTime(dt.Year, 1, 1);  //本年年初
    DateTime endYear = new DateTime(dt.Year, 12, 31);  //本年年末

    二、javascript 常用日期时间操作

       var myDate = new Date(); //获取当前日期
        myDate.getYear();       //获取当前年份(2位)  
        myDate.getFullYear();   //获取完整的年份(4位,1970)  
        myDate.getMonth();      //获取当前月份(0-11,0代表1月)  
        myDate.getDate();       //获取当前日(1-31)  
        myDate.getDay();        //获取当前星期X(0-6,0代表星期天)  
        myDate.getTime();       //获取当前时间(从1970.1.1开始的毫秒数)  
        myDate.getHours();      //获取当前小时数(0-23)  
        myDate.getMinutes();    //获取当前分钟数(0-59)  
        myDate.getSeconds();    //获取当前秒数(0-59)  
        myDate.getMilliseconds();   //获取当前毫秒数(0-999)  
        myDate.toLocaleDateString();    //获取当前日期  
        var mytime=myDate.toLocaleTimeString();    //获取当前时间  
        myDate.toLocaleString( );       //获取日期与时间

    三、SqlServer 日期时间操作

    1、获取当前时间

    select getdate()

    2、截取需要的值

    select datepart(year,getdate())

    select datepart(month,getdate())

    select datepart(day,getdate())

    select datepart(hour,getdate())

    select datepart(minute,getdate())

    select datepart(second,getdate())

    select datepart(week,getdate())

    3、在日期中添加或减去指定的时间间隔

    select dateadd(year,3,getdate()) --获取当前时间,往后推迟三年

    select dateadd(month,3,getdate()) --获取当前时间,往后推迟三个月

    select dateadd(day,3,getdate()) --获取当前时间,往后推迟三天

    select dateadd(hour,3,getdate()) --获取当前时间,往后推迟三小时

    select dateadd(minute,3,getdate()) --获取当前时间,往后推迟三分钟

    select dateadd(second,3,getdate()) --获取当前时间,往后推迟三秒钟

    4、返回两个日期之间的时间

    select datediff(year,'2001-08-19',getdate()) --2001-08-19和当前时间之间差多少年

    select datediff(month,'2001-08-19',getdate()) --2001-08-19和当前时间之间差多少月

    select datediff(day,'2001-08-19',getdate()) --2001-08-19和当前时间之间差多少天

    5、用不同的格式显示日期/时间

    select convert(char,getdate(),8)  --显示当前时-分-秒

    select convert(char,getdate(),10) --显示当前月-日-年,显示形式“08-19-11”

    select convert(char,getdate(),11) --显示当前年-月-日,显示形式“11/08/19”

    select convert(char,getdate(),14) --显示当前时-分-秒-毫秒,显示形式“14:54:57:090”

    6、其他

    SELECT CONVERT(datetime,CONVERT(char(8),GETDATE(),120)+'1')--这月的第一天

    select dateadd(d,-day(getdate()),dateadd(m,1,getdate()))--这月的最后一天   

    SELECT DATEADD(mm,DATEDIFF(mm,0,dateadd(month,-1,getdate())),0)--上月第一天  

    select dateadd(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0))--上月最后一天
     
    select DATEADD(SS,-1,dateadd(day,1,CONVERT(varchar(15) , getdate(), 102 )))--获取当天的最后一刻

  • 相关阅读:
    搭建微信公众号,获取用户公开信息
    搭建ES搜索引擎,实时导入mysql数据进行查询
    切换linux的shell
    隐藏CMD窗口,使程序在后台执行
    通过ssh远程查看java版本与在客户端查看不一致
    项目升级tomcat,修复漏洞
    springboot重定向后,https变成http
    【数论】【Polya定理】【枚举约数】【欧拉函数】【Java】poj2154 Color
    【数论】【Polya定理】poj1286 Necklace of Beads
    【置换群】poj3270 Cow Sorting
  • 原文地址:https://www.cnblogs.com/bugzone/p/Day20140508.html
Copyright © 2011-2022 走看看