使用date_trunc('month', CURRENT_DATE) - INTERVAL '1 second'来获取当前月份的第一天。 然后减去INTERVAL '1 second',这样就得到了上个月的最后一天(因为date_trunc函数会将时间部分截断,所以我们减去一秒来确保得到的是上个月的最后一天)。 使用pgsql语句获取该日期: 将上述逻辑组合成一个SQL查询来获取上个...
select to_char( now() - interval '1 day','YYYYMMDD'); --明天 select to_char( now() + interval '1 day','YYYYMMDD'); --上月 select to_char( now() - interval '1 month','YYYYMM'); --下个月 select to_char( now() + interval '1 month','YYYYMM'); --current_timestamp 同 ...
SELECT AGE('2022-01-01')/INTERVAL '1 month'; ``` 3. DATE_TRUNC函数 DATE_TRUNC函数可以将日期或时间值的精度截取到指定的级别。 例如,以下SQL语句使用DATE_TRUNC函数将当前时间截取到小时级别: ```sql SELECT DATE_TRUNC('hour', CURRENT_TIMESTAMP); ``` 4. DATE_PART函数 DATE_PART函数允许用户从...
startTime := curMM||'01 00:00:00.000'; endTime := to_char( startTime::timestamp + interval '1 month', 'YYYY-MM-DD HH24:MI:SS.MS'); strSQL := 'CREATE TABLE IF NOT EXISTS '||TG_RELNAME||'_'||curMM|| ' ( CHECK('||time_column_name||'>='''|| startTime ||''' AND...
下面是执行效果: 其中date_trunc函数中,第二个参数给一个包含到月份的时间日期就可以,例如now(),反正他都会截取到月份,如下图: selectdate_part('days', date_trunc('month', now())+'1 month'::interval-'1 day':: interval) 效果也是一样的:...
下面是执行效果: 其中date_trunc函数中,第二个参数给一个包含到月份的时间日期就可以,例如now(),反正他都会截取到月份,如下图: selectdate_part('days', date_trunc('month', now())+'1 month'::interval-'1 day':: interval) 效果也是一样的:...
SELECT DATE_ADD('2023-11-12 00:00:00', INTERVAL 1 MONTH) AS ADDED_DATE; -- 加一天 SELECT DATE_ADD('2023-12-12 00:00:00', INTERVAL 1 DAY) AS ADDED_DATE; -- 加一小时 SELECT DATE_ADD('2023-12-12 00:00:00', INTERVAL 1 HOUR) AS ADDED_DATE; -- 加一分钟 SELECT DATE_ADD('...
CREATE OR REPLACE FUNCTION add_months(start_date DATE, num_months INTEGER) RETURNS TABLE (month_date DATE) AS $$ DECLARE i INTEGER; BEGIN FOR i IN 0..num_months-1 LOOP month_date := start_date + INTERVAL '1 month' * i; RETURN NEXT; END LOOP; RETURN; END; $$ LANGUAGE plpg...
1、近七天 create_time BETWEEN current_date - INTERVAL '7 days' AND current_date 2、本周 create_time>= date_trunc('week', now()) AND create_time < date_trunc('week', now()) + INTERVAL '1 week'; 3、本月 create_time >= date_trunc('month', current_date) AND create_time < date...
1. 下面是执行效果: 其中date_trunc函数中,第二个参数给一个包含到月份的时间日期就可以,例如now(),反正他都会截取到月份,如下图: select date_part('days', date_trunc('month', now()) + '1 month'::interval - '1 day':: interval)