精华内容
下载资源
问答
  • 主要介绍了php获取当月最后一天函数分享,需要的朋友可以参考下
  • 主要介绍了js获取当月最后一天实例代码,有需要的朋友可以参考一下
  • 以下getdate()为获取当天的日期,按照实际需求,可以替换成参数或实际的日期当月天数select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0)))当月第一天...当月最后一天select dateadd(d,-day(getdate...

    以下getdate()为获取当天的日期,按照实际需求,可以替换成参数或实际的日期


    当月天数

    select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0)))

    当月第一天

    select   dateadd(d,-day(getdate())+1,getdate()) 

    当月最后一天

    select   dateadd(d,-day(getdate()),dateadd(m,1,getdate()))

    本年最后一天

    select   dateadd(d,-day(getdate()),dateadd(m,12,getdate()))

    当月第一个星期一

    SELECT DATEADD(wk, DATEDIFF(wk, '', DATEADD(dd, 6 - DAY(getdate()), getdate())), '')


    举个例子加以说明,以下案例是由于我原先采用substring将条件栏位转换为字符,导致性能上有所降低,后来直接引用以上函数并与月份函数有效结合而成,供大家参考:

    引用前 

    --where SUBSTRING(CONVERT(VARCHAR(12),Date1,112), 0, 7)=SUBSTRING(CONVERT(VARCHAR(12),DATEADD(MONTH,0,@fDate),112),0,7) 
    引用后

    WHERE Date1>=dateadd(d,-day(@fDate)+1,@fDate) AND Date1<DATEADD(MONTH,1,dateadd(d,-day(@fDate)+1,@fDate))

    展开全文
  • 当月最后一天:DATEINMONTH(TODAY(),-1) 上月最后一天:DATEINMONTH(TODAY(),1)-1 下月第一天:DATEINMONTH(TODAY(),-1)+1 当前日期的年份:year(today()) 当前日期的月份:month(today()) 当前日期的日:day(toda

    常用举例:

    当年第一天:DATEINYEAR(TODAY(), 1)
    当年最后一天:DATEINYEAR(TODAY(), -1)
    
    当月第一天:DATEINMONTH(TODAY(),1) 
    当月最后一天:DATEINMONTH(TODAY(),-1) 
    上月最后一天:DATEINMONTH(TODAY(),1)-1
    下月第一天:DATEINMONTH(TODAY(),-1)+1
    
    当前日期的年份:year(today())
    当前日期的月份:month(today())
    当前日期的日:day(today())
    
    
    当前日期前一天:datedelta(today(),-1)
    当前日期的上一月:monthdelta(today(),-1)
    当前日期的上一年:yeardelta(today(),-1)
    

    上面这些也不只一种写法。下面是所有日期相关函数的介绍

     

    注意:可以在决策平台中设置以  周天  还是  周一  为一周的开始

     

    1、获取时间:

    获取当前年月日的日期:today()

    获取当前年月日、时分秒的日期:now()

    YEAR:(serial_number)返回日期中的年。Year是介于1900和9999之间的一个数。
    MONTH:(serial_number)返回日期中的月。月是介于1和12之间的一个数。
    week:(serial_number)返回日期中的当年第几周
    DAY:(serial_number)返回日期中的日。DAY是介于1和31之间的一个数。
    HOUR(serial_number)返回某一指定时间的小时数。其值是介于0与23之间的一个整数。
    MINUTE(serial_number)返回某一指定时间的分钟数,其值是介于0与59之间的一个整数。
    SECOND(serial_number)返回某一指定时间的秒数,其值是介于0与59之间的一个整数。

    其中传入的参数可以是多种时间表达形式,以DAY为例:

    DAY("2000/1/1")等于1。
    DAY("2006/05/05")等于5。
    DAY("1997/04/20")等于20。
    DAY("2000-1-1","yyyy-MM-dd")等于1。
    DAY("2006-05-05","yyyy-MM-dd")等于5。
    DAY("1997-04-20","yyyy-MM-dd")等于20。
    DAY(35796)等于1。

     

    2、返回某年、季度、月、周第几天的日期

    DATEINYEAR(date,number):函数返回在一年当中第几天的日期。
    示例:
    DATEINYEAR(2008,100)等于2008-04-09,等价于DATEINYEAR("2008-08-08",100),也返回2008-04-09.
    DATEINYEAR(2008,-1)等于2008-12-31,等价于DATEINYEAR("2008-08-08",-1),也返回2008-12-31。
    
    
    DATEINQUARTER(date,number):函数返回在某一个季度当中第几天的日期。
    示例:
    DATEINQUARTER("2009-05-05",20)等于2009-04-20。
    
    
    DATEINMONTH(date,number):函数返回在某一个月当中第几天的日期。
    示例:
    DATEINMONTH("2008-08-08",20)等于2008-08-20。
    DATEINMONTH("2008-08-08",-1)等于2008-08-31。
    
    
    DATEINWEEK(date,number):函数返回在某一个星期当中第几天的日期。
    示例:
    dateInWeek("2008-08-28",2)等于2008-08-26。
    dateInWeek("2008-08-28",-1)等于2008-08-31。如果最后一个参数为-1,返回该日期所在星期的最后一天。

    3、返回某年、季度、月所包含的天数

    DAYSOFYEAR(year):返回指定日期所在年包含的天数。(指定日期在1900年1月后)
    示例:
    DAYSOFYEAR(2008)等于366,等价于DAYSOFYEAR("2008-01-01")。
    
    
    DAYSOFQUARTER(date):返回指定日期所在季度包含的天数。(指定日期在1900年1月后)
    示例:
    DAYSOFQUARTER("2009-02-01")等于90。
    DAYSOFQUARTER("2009/05/05")等于91。
    
    
    DAYSOFMONTH(date):返回指定日期所在月包含的天数。(指定日期在1900年1月后)
    示例:
    DAYSOFMONTH("1900-02-01")等于28。
    DAYSOFMONTH("2008/04/04")等于30。

    4、返回指定日期增减N年、月、天后的日期

    YEARDELTA(date,delta):返回指定日期后delta年的日期。
    示例:
    YEARDELTA("2008-10-10",10)等于2018-10-10。
    
    MONTHDELTA(date,delta):返回指定日期date后delta个月的日期。
    示例:
    MONTHDELTA("2008-08-08",4)等于2008-12-08。
    
    DATEDELTA(date,deltadays):返回指定日期后delta天的日期。deltaDays可以为正值,负值,零。
    示例:
    DATEDELTA("2008-08-08",-10)等于2008-07-29。
    DATEDELTA("2008-08-08",10)等于2008-08-18。

    5、返回指定日期的时间差值

    DAYVALUE(date):返回1900年1月1日至date日期所经历的天数。
    示例:
    DAYVALUE("2008/08/08")等于39667。
    
    
    DATETONUMBER(date):返回自1970年1月1日00:00:00至date日期所经过的毫秒数。
    示例:
    DATETONUMBER("2008-08-08")等于1218124800000。
    
    
    DATEDIF(start_date,end_date,unit):返回两个指定日期间的天数、月数或年数。
    示例:
    DATEDIF("2001/2/28","2004/3/20","Y")等于3,即在2001年2月28日与2004年3月20日之间有3个整年。
    DATEDIF("2001/2/28","2004/3/20","M")等于37,即在2001年2月28日与2004年3月20日之间有36个整月。
    DATEDIF("2001/2/28","2004/3/20","D")等于1116,即在2001年2月28日与2004年3月20日之间有1116个整天。
    DATEDIF("2001/2/28","2004/3/20","MD")等于8,即忽略月和年后,2001年2月28日与2004年3月20日的差为8天。
    DATEDIF("2001/1/28","2004/3/20","YM")等于2,即忽略日和年后,2001年1月28日与2004年3月20日的差为2个月。
    DATEDIF("2001/2/28","2004/3/20","YD")等于21,即忽略年后,2001年2月28日与2004年3月20日的差为21天。
    注释:
    Start_date:代表所指定时间段的初始日期。
    End_date:代表所指定时间段的终止日期。
    Unit:函数返回信息的类型。
    若unit=“Y”,则DATEDIF返回指定时间段的年差数。
    若unit=“M”,则DATEDIF返回指定时间段的月差数。
    若unit=“D”,则DATEDIF返回指定时间段的日差数。
    若unit=“MD”,则DATEDIF忽略年和月,返回指定时间段的日差数。
    若unit=“YM”,则DATEDIF忽略年和日,返回指定时间段的月差数。
    若unit=“YD”,则DATEDIF忽略年,返回指定时间段的日差数。
    
    
    DATESUBDATE(date1,date2,op):返回两个日期之间的时间差。
    示例:
    DATESUBDATE("2008-08-08","2008-06-06","h")等于1512。
    注释:
    op表示返回的时间单位:"s",以秒为单位。"m",以分钟为单位。"h",以小时为单位。"d",以天为单位。"w",以周为单位。
    
    
    DAYS360(start_date,end_date,method):按照一年360天的算法(每个月以30天计,一年共计12个月),返回两日期间相差的天数,这在会计计算中将会用到。如果财务系统是基于一年12个月,每月30天,可用此函数帮助计算支付款项。
    示例:
    DAYS360("1998/1/30","1998/2/1")等于1
    注释:
    Start_date和end_date:是用于计算期间天数的起止日期。
    Method:它指定了在计算中是采用欧洲方法还是美国方法。
    Method定义:FALSE或忽略美国方法(NASD)。如果起始日期是一个月的31号,则等于同月的30号。如果终止日期是一个月的31号,并且起始日期早于30号,则终止日期等于下一个月的1号,否则,终止日期等于本月的30号。TRUE欧洲方法。无论是起始日期还是终止日期为一个月的31号,都将等于本月的30号。
    备注:
    FineReport将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。在1900年日期系统中,FineReport电子表格将1900年1月1日保存为系列数2,将1900年1月2日保存为系列数3,将1900年1月3日保存为系列数4……依此类推。如在1900年日期系统,1998年1月1日存为系列数35796。

    6、周、星期相关函数

    weekdate(year,month,weekOfMonth,dayOfWeek):返回指定年月的指定周的周几的具体日期。
    示例:
    weekdate(2009,10,2,1)返回的是2009年的10月的第二个周的第一天即星期天的日期,返回的是2009-10-04
    最后一个参数dayOfWeek为-1时,表示这个周的最后一天
    示例:
    weekdate(2009,12,1,-1)返回的是2009年的12月的第一个周的最后一天即星期六的日期,返回的是2009-12-05
    
    
    WEEKDAY(Serial_number):获取日期并返回星期数。返回值为介于0到6之间的某一整数,分别代表星期中的某一天(从星期日到星期六)。
    Serial_number:输入的日期备注:FineReport将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。在1900年日期系统中,FineReport电子表格将1900年1月1日保存为系列数2,将1900年1月2日保存为系列数3,将1900年1月3日保存为系列数4……依此类推。如在1900年日期系统,1998年1月1日存为系列数35796。
    举例:
    WEEKDAY("2005/9/10")等于6(星期六)。
    WEEKDAY("2005/9/11")等于0(星期日)。
    WEEKDAY(35796)等于4(星期四)。

    7、农历与英文时间表示法

    LUNAR (year, month, day):返回当前日期对应的农历时间。
    year,month,day:分别对应年月日。
    示例:
    如果需要查询2011年7月21日对应的农历时间,则只需输入LUNAR(2011,7,21)结果将显示为:辛卯年六月廿一
    同样,如输入LUNAR(2001,7,21),则显示:辛巳年六月初一。
    本公式支持的时间段为1900-2100年。
    
    
    TIME(hour,minute,second):返回指定的日期和时间, 日期会随当天的日期改变。介于0:00:00(12:00:00A.M.)与23:59:59(11:59:59P.M.)之间的时间可返回0到0.99999999之间的对应数值。
    Hour:介于0到23之间的数。
    Minute:介于0到59之间的数。
    Second:介于0到59之间的数。
    示例:
    TIME(14,40,0)等于2:40PM。
    TIME(19,43,24)等于7:43PM。

    8、日期格式相关函数

    DATE(year,month,day):返回一个表示某一特定日期的系列数。
    Year:代表年,一般为四位数。
    Month:代表月份。若month<12,则函数把参数值作为月。若month>12,则函数从年的一月份开始往上累加。若month=0,则表示当年上一年的12月,若-1则表示上一年的11月,以此类推
    例如:DATE(2000,25,2)等于2002年1月2日的系列数。
    Day:代表日。若日期小于等于某指定月的天数,则函数将此参数值作为日。若日期大于某指定月的天数,则函数从指定月份的第一天开始往上累加。若day为0、-1与月份规则一致
    例如:DATE(2000,3,35)等于2000-04-04
    
    
    
    TODATE()函数可以将各种日期形式的参数转换为日期类型。
    它有三种参数的形式:
    1. 参数是一个日期型的参数,那么直接将这个参数返回。
    示例:TODATE(DATE(2007,12,12))返回2007年12月12日组成的日期。
    2. 参数是以从1970年1月1日0时0分0秒开始的毫秒数,返回对应的时间。
    示例:TODATE(1023542354746)返回2002年6月8日。
    3. 参数是日期格式的文本,那么返回这个文本对应的日期。
    示例:
    TODATE("2007/10/15")返回2007年10月5日组成的日期。
    TODATE("2007-6-8")返回2007年6月8日组成的日期。
    4. 有两个参数,第一个参数是一个日期格式的文本,第二个参数是用来解析日期的格式。
    示例:TODATE("1/15/07","MM/dd/yy")返回07年1月15日组成的日期。
    特别的,"yyyyMMdd"是用来解析形如“20081230”之类的日期格式的。比如TODATE("20110830","yyyyMMdd")返回11年08月30日组成的日期5有三个参数,第一个参数是一个日期格式的文本,第二个参数是用来解析日期的格式,第三个参数为解析日期的语言,如:zh(中文),en(英文)。
    示例:TODATE("星期一1/15/07","EEEMM/dd/yy","zh")返回07年1月15日组成的日期,使用“zh(中文)”才能够正常解析“星期一”这个字符串。注:如果EEE 和 MM/dd/yy 不一致, 以 MM/dd/yy 为主。 示例:TODATE("星期三1/15/07","EEEMM/dd/yy","zh")返回07年1月15日组成的日期,实际是星期一,而不是星期三。

     

    展开全文
  • 当月第一天 select dateadd(d,-day(getdate())+1,getdate()) 当月最后一天 select dateadd(d,-day(getdate()),dateadd(m,1,getdate()))

    当月第一天

    select dateadd(d,-day(getdate())+1,getdate())

     

    当月最后一天

    select dateadd(d,-day(getdate()),dateadd(m,1,getdate())) 

    展开全文
  • 上个月最后一天: $last_month_last_day = date('Y-m-t',strtotime('-1 ...当月最后一天: $first_day=date('Y-m-01',time()); $this_month_last_day=date("Y-m-d",strtotime("$first_day +1 month -1 day"))...

    上个月最后一天:

    $last_month_last_day = date('Y-m-t',strtotime('-1 month'));

    当月最后一天:

    $first_day=date('Y-m-01',time());
    $this_month_last_day=date("Y-m-d",strtotime("$first_day +1 month -1 day"));

    下月最后一天:

    $first_day=date('Y-m-01',time());
    $next_month_last_day=date("Y-m-d",strtotime("$first_day +2 month -1 day"));

     

    转载于:https://www.cnblogs.com/dreamysky/p/5914778.html

    展开全文
  • JS怎么获取当月最后一天

    千次阅读 2020-10-24 21:36:28
    JS怎么获取当月最后一天,获取3个月后,5年后
  • mysql上月最后一天,当月最后一天

    千次阅读 2016-09-26 15:58:20
    select last_day(DATE_SUB(now(),INTERVAL 1 MONTH)) #上月最后一天日期 %Y-%m-%d select last_day(curdate()) #当月最后一天日期 %Y-%m-%d  
  • java获取当月最后一天

    2020-08-25 16:01:41
    * 当月最后一天 * @param timeFlag 是否带时分秒, true是 * @return */ public static String getLastDay(boolean timeFlag) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar ...
  • //重置为当月第一天 dtValueStart = new DateTime(dtValueStart.Year, dtValueStart.Month, 1)...//重置为当月最后一天 dtValueEnd = new DateTime(dtValueEnd.Year, dtValueEnd.Month, 1).AddMonths(1).AddDays(-1);
  • SQL Server 对日期的操作函数的使用 在编写sql的时候,会碰到对日期的处理,特别是日期区间对业务数据的限制。 如:用户数据的是一个固定月份 2020-03 这个时候需要匹配数据就是2020-03-01 ~ 2020...--当月一天 selec
  • shell 获取当月最后一天的方法先获取下个月的第一天,再取lastday 先获取下个月的第一天,再取lastday nextmonth=date -d "+1 month" +%Y-%m-01 echo $nextmonth enddate=date -d"$nextmonth last day" +%Y-%m-%d #...
  • 取某月天数:select day(dateadd(month,1,'2012-02-01')-1) --当月天数 select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0))) ---当月第一天 select dateadd(d,-day(getdate...---当月最后一天 select
  • 根据传入字符串类型的 年月 得到当月最后一天 SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMM"); // 定义日期字段 Date cxdate1 = null; // 转换前台传入字符串为日期格式 cxdate1= sdf1.parse(eDate);...
  • js获取当月最后一天

    2017-11-15 17:43:00
    js获取当月最后一天: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 functiongetLastDay(){ vartoday =newDate(); varnewYear = today.getFullYear();//取当前的年份 varmonth =...
  • JAVA获取当月第一天和最后一天以及当月的总天数二话不说直接上代码,拿走 二话不说直接上代码,拿走 // 获取当月第一天和最后一天 Calendar cale = null; cale = Calendar.getInstance(); SimpleDateFormat ...
  • select day(dateadd(month,1,'2012-02-01')-1) --当月天数select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0))) ---当月第一天select dateadd(d,-day(getdate())+1,getdate()) ---当月最后一天sele....
  • crontab在Linux系统中有比较多...获取当月最后一天,我也没找到比较好的办法,直接用于crontab命令中的筛选方式没有试出来。下面的筛选党员最后一天是用在shell脚本里。 crontab命令: 0 23 28-31 * * /home/your ...
  • java中取得当月最后一天的四种方法  第一种,使用Calendar的roll方法,在限制某个日期字段不改变的形式下,改变其他日期字段的值。  第二种,使用Calendar的getActualMaximum方法,获得指定日期字段的最大值。...
  • 取某月天数:select day(dateadd(month,1,'2012-02-01')-1) --当月天数 select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0))) ---当月第一天 select dateadd(d,-day...---当月最后一天 ...
  • 当月天数 select day(dateadd(ms,-3,DATEADD(m, DATEDIFF(m,0,getdate())+1,0)))  当月第一天 select dateadd(d,-day(getdate())+1,...当月最后一天 select dateadd(d,-day(getdate()),dateadd(m,1,getdate()))
  • <html xmlns="http://www.w3.org/1999/xhtml" > <meta charset="UTF-8"> <head>...获取当年当月最后一天日期</title> <script language="javascript"> function getLastDa...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 891
精华内容 356
关键字:

当月最后一天