mysql中获取本月第一天、本月最后一天、上月第一天、上月最后一天等等
转自: https://blog.csdn.net/min996358312/article/details/61420462
1、当函数使用时,即interval(),为比较函数,如:interval(10,1,3,5,7); 结果为4;
原理:10为被比较数,后面1,3,5,7为比较数,将后面四个依次与10比较,看后面数字组有多少个少于10,则返回其个数。前提是后面数字组为从小到大排列,否则返回结果0。
2、当关键词使用时,表示为设置时间间隔,常用在date_add()与date_sub()函数里,如:interval 1 day ,解释为将时间间隔设置为1天。
# 本年第一天
select date_sub(curdate(), interval dayofyear(curdate())-1 day);
SELECT curdate() - INTERVAL(dayofyear(curdate()) - 1) DAY;
# 本年最后一天
select concat(year(curdate()),'-12-31');
# 上年最后一天
select date_sub(curdate(), interval dayofyear(curdate()) day);
# 下年第一天(本年第一天加一年)
SELECT (curdate() - INTERVAL(dayofyear(curdate()) - 1) DAY) + INTERVAL 1 YEAR;
# 本月第一天
select date_add(curdate(), interval - day(curdate()) + 1 day);
# 本月最后一天
select last_day(curdate());
# 上月第一天
select date_add(curdate()-day(curdate())+1,interval -1 month);
# 上月最后一天
select last_day(date_sub(now(),interval 1 month));
# 下月第一天
select date_add(curdate()-day(curdate())+1,interval 1 month);
# 下月最后一天
select last_day(date_sub(now(),interval -1 month));
# 本月天数
select day(last_day(curdate()));
# 上月今天的当前日期
select date_sub(curdate(), interval 1 month);
# 上月今天的当前时间(时间戳)
select unix_timestamp(date_sub(now(),interval 1 month));
# 获取当前时间与上个月之间的天数
select datediff(curdate(), date_sub(curdate(), interval 1 month));
# 本周第一天:
select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 1 DAY);
# 本周最后一天:
select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 5 DAY);
# 上周第一天:
select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 8 DAY);
# 上周最后一天:
select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 2 DAY);
mysql中获取本月第一天、本月最后一天、上月第一天、上月最后一天等等的更多相关文章
- MySQL中获取天、周、月等数据
MySQL中获取天.周.月等数据 1.今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 2.昨天 SELECT * FROM 表名 ...
- mysql中获取一天、一周、一月时间数据的各种sql语句写法
今天抽时间整理了一篇mysql中与天.周.月有关的时间数据的sql语句的各种写法,部分是收集资料,全部手工整理,自己学习的同时,分享给大家,并首先默认创建一个表.插入2条数据,便于部分数据的测试,其中 ...
- Mysql 中获取刚插入的自增长id的值
insert into user (username,password) VALUES ('); //获取刚插入的自增长id的值 select last_insert_id(); 在MySQL中,使用 ...
- javaweb从mysql中获取数据验证用户名密码成功跳转,失败重新验证
要求:validate.jsp页面中获取请求参数(request.getparameter(“name属性的值”)),注意中文参数获取之前要设置请求编码(request.setCharaterEnco ...
- MYSQL中获取得最后一条记录的语句
方法1:select max(id) from tablename 方法2:select last_insert_id(); 在MySQL中,使用auto_increment类型的id字段作为表的主键 ...
- R中,将从MySQL中获取的结果字符列表转化为向量,并测试绘制图形
# 使用RMySQL操作数据库 # 载入DBI和RMySQL包 library(DBI) library(RMySQL) # 创建数据库连接 con <- dbConnect(MySQL(),h ...
- mysql中获取自增函数解析
1 如果 一条语句多行插入,默认情况下是返回第一行的自增id 2 存储过程可以与外部共享自增,而函数和触发器不能,因为在函数和触发器关闭的时候,自增自动restore 3 获取自增id,不会因为并发产 ...
- MySQL 中获取用户表、用户视图、用户表中列信息
直接贴代码了: /// <summary> /// MySql 数据库维护中心 /// </summary> public class MySqlDbMaintenance:D ...
- Mysql中获取行号
Select UID,(@rowNum:=@rowNum+1) as rowNo From a, (Select (@rowNum :=0) ) b Order by a.Money Desc
随机推荐
- 容器监控工具WeaveScope
最近一段时间整了一些docker容器,弄了一些基于docker的微服务通信,弄好一套服务系统之后,对于服务的性能,基础数据的监控就显的很重要, 不然就是两眼一抹黑了,要不就是维护成本很高,这些都不符合 ...
- C# MemoryCache学习笔记
很多情况下需要用到缓存,合理利用缓存一方面可以提高程序的响应速度,同时可以减少对特定资源访问的压力.为了避免每次请求都去访问后台的 资源(例如数据库),一般会考虑将一些更新不是很频繁的.可以重用的数据 ...
- 单源最短路 Bellman-Ford算法(有向图)
// 单源最短路问题 // Bellman-Ford算法 // 复杂度O(V*E) //! 可以判断负圈 #include <cstdio> #include <iostream&g ...
- Kong Gateway - 11 基于网关服务的ACL访问控制列表 黑名单
Kong Gateway - 11 基于网关服务的ACL访问控制列表 黑名单 同一服务名称 book 不允许即创建白名单访问控制列表又创建黑名单访问控制列表 启用服务的白名单&黑名单配置文件时 ...
- SDI011 读卡器自动发送00A4选择指令 解决方法
如标题,SDI读卡器会自动发送 004A的应用选择指令 解决方法: 是Certificate Propagation 服务 弄的, 关闭就好了
- idea 工具 听课笔记 首页
maven 创建 javaWeb站点结构标准及异常权限调整 解决Intellij Idea下修改jsp页面不自动更新(链接 idea中使用github 提交 idea 从github.com上恢复站 ...
- go 算法与数据结构
数据结构 稀疏数组 package main import "fmt" /* 稀疏数组 案例:五子棋存盘与复盘 节省存储空间 */ type ValNode struct { ro ...
- Travase Objects and four method of array
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- tomcat虚拟路径的配置方法
方式一: 将web项目配置到webapps以外的目录 在conf/server.xml中配置,找到<host>标签,<Content docBase="E:\yqs\Jsp ...
- 剑指offer-面试题56_1-数组中只出现一次的两个数字-位运算
/* 题目: 求数组A中只出现一次的数字,该数组中有2个数字a.b仅出现一次,其余均出现两次 */ /* 思路: 两个相同的数字异或为0. 遍历数组,得到数组中各数字异或后的结果x,结果x=a^b. ...