做娃衣的布料去哪个网站,中小型企业网站建设与推广,网站建设选谋者,搭建网站知识要获取去年的12月份的第一天#xff0c;你可以使用ADD_MONTHS和TRUNC函数组合。这里是一个简单的SQL查询#xff0c;它将返回去年的12月1日#xff1a; sql复制代码
SELECT TRUNC(ADD_MONTHS(TRUNC(SYSDATE, YYYY), -1), MM) AS first_day_of_last_december FROM dual;
在…要获取去年的12月份的第一天你可以使用ADD_MONTHS和TRUNC函数组合。这里是一个简单的SQL查询它将返回去年的12月1日 sql复制代码
SELECT TRUNC(ADD_MONTHS(TRUNC(SYSDATE, YYYY), -1), MM) AS first_day_of_last_december FROM dual;
在这个查询中
TRUNC(SYSDATE, YYYY) 会将当前日期截断到年份的开始即当前年份的1月1日。ADD_MONTHS(..., -1) 会从上一步得到的日期中减去1个月这将我们带到去年last year的12月1日。但是由于我们只需要年份减1而不是月份减1因为我们要的是12月所以我们实际上不需要减去1个月。TRUNC(..., MM) 确保我们得到的是月份的第一天。但是在这个例子中因为我们已经是12月1日了这一步其实是多余的但它不会改变结果所以包括它也没关系。
因此简化的查询没有多余的TRUNC可以是 sql复制代码
SELECT TRUNC(ADD_MONTHS(TRUNC(SYSDATE, YYYY), -12), MM) AS first_day_of_last_december FROM dual;
或者更简单地 sql复制代码
SELECT TRUNC(ADD_MONTHS(SYSDATE, -12), MM) AS first_day_of_last_december FROM dual;
在这个简化的版本中我们直接对SYSDATE使用ADD_MONTHS来得到去年的同一天去年的今天然后使用TRUNC来截断到月份的开始即去年的12月1日。