MySQL中常用到的关于时间的SQL

-- 今天
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d 00:00:00') AS dayStart;
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d 23:59:59') AS dayEnd;

-- 昨天
SELECT DATE_FORMAT( DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 00:00:00') AS yesterdayStart;
SELECT DATE_FORMAT( DATE_SUB(CURDATE(), INTERVAL 1 DAY), '%Y-%m-%d 23:59:59') AS yesterdayEnd;

-- 上周
SELECT DATE_FORMAT( DATE_SUB( DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY), INTERVAL 1 WEEK), '%Y-%m-%d 00:00:00') AS lastWeekStart
SELECT DATE_FORMAT( SUBDATE(CURDATE(), WEEKDAY(CURDATE()) + 1), '%Y-%m-%d 23:59:59') AS lastWeekEnd;

-- 本周
SELECT DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY), '%Y-%m-%d 00:00:00') AS weekStart;
SELECT DATE_FORMAT(DATE_ADD(SUBDATE(CURDATE(), WEEKDAY(CURDATE())), INTERVAL 6 DAY), '%Y-%m-%d 23:59:59') AS weekEnd;

-- 上月
SELECT DATE_FORMAT( DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m-01 00:00:00') AS lastMonthStart;
SELECT DATE_FORMAT( LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 1 MONTH)), '%Y-%m-%d 23:59:59') AS lastMonthEnd;

-- 本月
SELECT DATE_FORMAT(CURDATE(), '%Y-%m-01 00:00:00') AS monthStart;
SELECT DATE_FORMAT(LAST_DAY(CURDATE()), '%Y-%m-%d 23:59:59') AS monthEnd;

--获取今天时间年月日

--SELECT curdate() as nowDate

-- 获取现在时间(年月日时分秒)

SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s') as nowTime

--获取本月有多少天

select DATEDIFF(date_add(curdate() - day(curdate()) + 1, interval 1 month),
DATE_ADD(curdate(), interval -day(curdate()) + 1 day)) as day
from dual;

获取某个月的每一天或当前月的每一天日期

此SQL参考自 https://blog.csdn.net/qq_38798251/article/details/89140471

SELECT dateFROM (select DATE_ADD(t1.dayed, INTERVAL t2.number DAY) date      from (select DATE_ADD(curdate(), interval -day(curdate()) + 1 day) dayed) t1,           (SELECT @xi := @xi + 1 as number            from (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) xc1,                 (SELECT 1                  UNION                  SELECT 2                  UNION                  SELECT 3                  UNION                  SELECT 4                  UNION                  SELECT 5                  UNION                  SELECT 6                  UNION                  SELECT 7                  UNION                  SELECT 8) xc2,                 (SELECT @xi := -1) xc0) t2      where DATE_ADD(t1.dayed, INTERVAL t2.number DAY)) timeWHERE SUBSTRING(date, 1, 7) = SUBSTRING(CURDATE(), 1, 7)

另有一些未用到的SQL 做个记录

1、查询当前时间3天前的时间点

select date_sub(now() ,interval 3 day)

2.查询当前时间的时间3天之后的时间点

select data_sub(now(),interval -3 day)

3.查询当前时间3个月之前的时间点

select data_sub(now(),interval 3 month)

4.查询当前时间3个月之后的时间点

select data_sub(now,interval -3 month)

(0)

相关推荐

  • MySQL 查询指定时间范围内的数据

    时间字段名均不引 当天 SELECT * FROM 表名 WHERE TO_DAYS(时间字段名) = TO_DAYS(NOW()); 几天前 -- 昨天.几天前就<=几SELECT * FRO ...

  • mysql查询特定时间段内的数据

    转载自:https://blog.csdn.net/EightSwords/article/details/79702101 建表语句: SET FOREIGN_KEY_CHECKS=0; -- -- ...

  • Oracle interval '1' YEAR 今天报错了

    2.28日,客户微信公众号更新账单列表功能:业主群里反馈用户查到的账单记录不是自己的,经验证和推测是同事写死了用户编号.好吧!!!在家办公,有点马虎,表示理解吧. 2.29日,星期六,懒觉还没睡醒,业 ...

  • 项目中常用的19条mysql优化

    Java编程语言是一种简单.面向对象.分布式.解释型.健壮安全.与系统无关.可移植.高性能.多线程和动态的语言.如今Java已经广泛应用于各个领域的编程开发. 一.EXPLAIN 做MySQL优化,我 ...

  • 生活中常用的时间单位

    生活中常用的时间单位还有:秒s.小时h.日(天)d.月m.年y等. 秒的英文是second,缩写为s, 小时的英文是hour,缩写为h, 天的英文是day,缩写为d, 月的英文是month,缩写为m, ...

  • Excel中14个常用的日期与时间函数,动画演示,中文解读

    [温馨提示]亲爱的朋友,阅读之前请您点击[关注],您的支持将是我最大的动力! 前天的教程中汇总了16个文本函数的用法,小伙伴们在工作中应用得如何?今天阿钟老师又整理了14个日期和时间函数的用法.在Ex ...

  • MySQL中查询时间最大的一条记录

    在项目中要查询用户最近登录的一条记录的 ip 直接写如下 SQL: SELECT ip,MAX(act_time) FROM users_login GROUP BY login_id; 但是这样是取 ...

  • 初中数学应用题中常用公式总结,收藏就赚到!

    GUIDE 导读 初中数学虽然没有高中那么复杂,但是知识点还是比较琐碎. 很多人学起来得心应手是因为对该阶段的数学有章可循. 那么今天老师给同学们整理一下初中数学应用题中常用到的公式,希望对同学们有所 ...

  • 珍藏版!中医中常用穴位和艾灸功能总结(建议收藏)

    常用的主要经穴 药有药性,穴有穴性.掌握了药性,可据此处方遣药:同样,掌握了穴性,在随症取穴时,就有了依据.以下将常用的主要经穴,依其性能分为三类,可供艾灸临床辨证施治.立法选穴参考. (一)补益类 ...

  • HR数据分析中常用的21个数据源

    我们通常听到的一个问题是"什么可以用于分析的数据源?" 在本文中,我们将列出HR和更广泛业务中的许多常见数据源,这些数据源将有助于您进行人员分析. HR数据源可以分为3类: 一.H ...

  • 教你认识弱电智能化工程中常用的工具

    线盘 用于长距离的电源线盘接电,线盘长度有20米.30米.50米等型号. 充电起子 充电起子,既可当螺丝刀又能用作电钻,特殊情况下以充电电池作为动力电源. 配合各式通用的六角工具头可以拆卸及锁入螺丝, ...

  • 这些Excel操作技巧,除了最后1个,其他都是工作中常用的

    [温馨提示]亲爱的朋友,阅读之前请您点击[关注],您的支持将是我最大的动力! 今天分享几个简单实用的的Excel操作技巧,几乎天天都用到.如果你是Excel高手,可以忽略这篇教程,毕竟是一些能提高工作 ...