SQL 获取当月天数的方法

之前网上找到的方法是

select day(dateadd(mm,1,getdate())-day(getdate()))

该方法平时能工作正常,但是在某些月份31号时会发生错误,比如1月31号,8月31号等

重新自己改了下方法,能正常获取到当月天数

select day(dateadd(MONTH,1,GETDATE()-DAY(GETDATE())+1)-1)

可用以下语句进行测试对比

declare @date datetime=convert(datetime,‘2014-01-31‘)
select day(dateadd(MONTH,1,@date-DAY(@date)+1)-1)
select day(dateadd(month,1,@date)-day(@date))
时间: 2024-10-26 04:38:02

SQL 获取当月天数的方法的相关文章

php获取当月天数及当月第一天及最后一天、上月第一天及最后一天实现方法

1.获取上个月第一天及最后一天.    echo date('Y-m-01', strtotime('-1 month'));    echo "<br/>";    echo date('Y-m-t', strtotime('-1 month'));    echo "<br/>"; 2.获取当月第一天及最后一天.    $BeginDate=date('Y-m-01', strtotime(date("Y-m-d"))

php php获取当月天数及当月第一天及最后一天、上月第一天及最后一天实现方法

在做查询过程中,例如要实现查上个月从第一天到最后一天的佣金(提成),那我们在程序实现过程中就要让程序在上个月的范围内查询,第一天是比较好办,但最 后一天就不定,要去写段函数进行月份及年份判断来得出上个月共有多少天.那就比麻烦,还有获取当前月份,当前年份等常规日期获取函数,以下代码都是经过本 公司工程师测试后的正确代码,可以放心使用. 1.获取上个月第一天及最后一天.    echo date('Y-m-01', strtotime('-1 month'));    echo "<br/&g

获取当月天数

今天写个日历,需要知道当月天数,在百度N久之后,都没有收获或者方法不尽人意, 于是,我看NSCanlendar类中的方法说明,终于找到了rangeIfUnit这个方法,帮助说明如下图所示, ① 小单位是NSDayCalendarUnit,大单位是NSYearCalendarUnit,并不是要取这一年包含多少天,而是要取"天"(Day)这个单位在这一年(Year)的取值范围.其实不管你提供的日期是多少,返回的值都是"1--31". ② 小单位是NSDayCalenda

java获取当月天数,指定年月的天数,指定日期获取对应星期 .

1 package com.example.administrator.dayofmonth; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Calendar; 5 import java.util.Date; 6 7 /** 8 * Created by 火龙裸先生 on 2017/4/11 0011. 9 */ 10 11 public class Number_Of_Days { 12 13 /** 14 * 获取当月的

php -- 获取当月天数及当月第一天及最后一天、上月第一天及最后一天(备忘)

Learn From :http://www.jxbh.cn/newshow.asp?id=1635&tag=2 //1.获取上个月第一天及最后一天. date('Y-m-01', strtotime('-1 month')); date('Y-m-t', strtotime('-1 month')); //2.获取当月第一天及最后一天. date('Y-m-01', strtotime(date("Y-m-d"))); date('Y-m-d', strtotime(&quo

new Date()相关获取当月天数和当月第一天

var  myDate = new Date(); //获取本月第一天周几 var monthFirst = new Date(myDate.getFullYear(), parseInt(myDate.getMonth()), 1).getDay(); //获取本月天数(获取后一个月的0日即前一月的最后一日) var totalDay=(new Date(myDate.getFullYear(), parseInt(myDate.getMonth() + 1), 0)).getDate();

JavaScript 获取当月天数

getDate() 方法可返回月份的某一天.取值范围是1~31 如果是0的话,就返回最后一天.这样就能取得当月的天数了 比如获取16年2月份的天数 var day = new Date(2016,2,0); var daycount = day.getDate(); alert(daycount);//29

Sql获取当月月初和月末的时间

DECLARE @CurrentTime DATETIME DECLARE @Start DATETIME DECLARE @End DATETIME SET @CurrentTime = GETDATE() SET @Start = DATEADD(ms, -1, DATEADD(mm, DATEDIFF(m, 0, @CurrentTime), 0)) SET @End = DATEADD(ms, -3, DATEADD(mm, DATEDIFF(m, 0, @CurrentTime) +

ORACLE获取SQL绑定变量值的方法总结

  本文总结一下ORACLE数据库中如何获取SQL绑定变量值的方法,在SQL优化调优过程中,经常会用到这方面的知识点.在此梳理.总结一下,方面日后查找.翻阅. 方法1:查询V$SQL V$SQL视图中的BIND_DATA字段用来存储绑定变量的值,但是从这个视图查询绑定变量的值,有很大的局限性: 1: 它的记录频率受_cursor_bind_capture_interval隐含参数控制,默认值为900,表示每900秒记录一次绑定值,也就是说在900内,绑定变量值的改变不会反应在这个视图中.除非你调