SQL取系统时间的前一个月的月份和年份

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL取系统时间的前一个月的月份和年份相关的知识,希望对你有一定的参考价值。

如题,请大家帮忙,谢谢了!
请考虑1月份的情况,不要简单的月份减一,如:2009年1月20号,我要通过SQL分别得到12和2008

SQL SERVER 提供了一些时间函数:
取当前时间:select getdate()
取前一个月的时间:SELECT DATEADD(MONTH,-1,GETDATE()) 月份减一个月
取年份:SELECT YEAR( DATEADD(MONTH,-1,GETDATE())),Year 取年份
取月份:SELECT MONTH( DATEADD(MONTH,-1,GETDATE())) ,month 取月份。
如上,可通过对日期函数的各种组合,来达到目标。
参考技术A 去查下datedadd或者datediff函数的用法 参考技术B money=month(dateadd(m,-1,datetime))
year=year(dateadd(m,-1,datetime))
参考技术C select month(dateadd(m,-1,getdate()))

select year(dateadd(m,-1,getdate()))
参考技术D if month(datetime)=1 then
yy=year(datediff(y,1,datetime))
mm=12
else
yy=year(datetime)
mm=month(datediff(m,1,datetime)
end if本回答被提问者采纳

mysql日期函数 当前日期 curdate() , 当前年 year(curdate()), 取date的年份 year(date) ,取date的月份 month(date)

获取系统当前日期时间: sysdate()
获取系统当前日期:curdate()
获取系统当前时间:curtime()
获取给定日期的年份: year(date)
获取给定日期的月份:month(date)
为指定日期增加一个时间间隔的函数:date_add(date,INTERVAL expr unit)
 
(1) 查询作者的出生年份
作者出生年份 = 当前年份 - 作者年龄
       = year(curdate()) - age
 
注: 当前日期 curdate() , 当前年 year(curdate())
 
(2) 查询显示最新出版日期在今年前半年的作者信息
select * from authors where year(isbn)=year(curdate()) and month(isbn)>7 ;
今年,年份是当前年: year(isbn)=year(curdate())
上半年,月份小于7: month(isbn)<7
 
注:灵活使用 year()  month()
 
 
 

以上是关于SQL取系统时间的前一个月的月份和年份的主要内容,如果未能解决你的问题,请参考以下文章

如何在sql中从给定的月份和年份获取月份的第一天和最后一天

mysql日期函数 当前日期 curdate() , 当前年 year(curdate()), 取date的年份 year(date) ,取date的月份 month(date)

Java - 在指定的给定月份 - 年份范围内打印每个月的第一个和最后一个日期

js 日期下拉框下拉框内容显示日期YYYYMM,要求范围:系统时间前4个月、后8个月。怎么实现?

SQL - 按日期和年份求和

sql怎样列出一个月的全部日期