没有合适的资源?快使用搜索试试~ 我知道了~
MySql 是否工作日判断,得到T+n个工作日(含自定义节假日)函数

温馨提示
1、Mysql 判断指定日期是否工作日(带自定义节假日、法定节假日) 2、Mysql 得到T+n个工作日日期(带自定义节假日、法定节假日) fGetWorkDay('2018-02-13', 5) ------------------------------ 2018-02-26 fGetWorkDay('2018-09-26', 5) ------------------------------ 2018-10-08
资源推荐
资源详情
资源评论



















### 节假日配置表,自行根据需要修改,已含2015至2018法定节假日配置
DROP TABLE IF EXISTS `holiday`;
CREATE TABLE `holiday` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`year` varchar(20) NOT NULL,
`month` varchar(20) NOT NULL,
`day` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=169 DEFAULT CHARSET=utf8;
/*Data for the table `holiday` */
insert into `holiday`(`id`,`year`,`month`,`day`) values (113,'2015','6','20,21,22,27,28'),(114,'2015','7','4,5,11,12,18,19,25,26'),(115,'2015','8','1,2,8,9,15,16,22,23,29,30'),(116,'2015','9','3,4,5,12,13,19,20,26,27'),(117,'2015','10','1,2,3,4,5,6,7,11,17,18,24,25,31'),(118,'2015','11','1,7,8,14,15,21,22,28,29'),(119,'2015','12','5,6,12,13,19,20,26,27'),(132,'2016','1','1,2,3,9,10,16,17,23,24,30,31'),(133,'2016','2','7,8,9,10,11,12,13,20,21,27,28'),(134,'2016','3','5,6,12,13,19,20,26,27'),(135,'2016','4','3,4,5,9,10,16,17,23,24'),(136,'2016','5','1,2,3,7,8,14,15,21,22,28,29'),(137,'2016','6','4,5,9,10,11,18,19,25,26'),(138,'2016','7','2,3,9,10,16,17,23,24,30,31'),(139,'2016','8','6,7,13,14,20,21,27,28'),(140,'2016','9','3,4,10,11,15,16,17,24,25'),(141,'2016','10','1,2,3,4,5,6,7,15,16,22,23,29,30'),(142,'2016','11','5,6,12,13,19,20,26,27'),(143,'2016','12','3,4,10,11,17,18,24,25,31'),(144,'2017','1','1,2,7,8,14,15,21,22,27,28,29,30,31'),(145,'2017','2','1,2,5,11,12,18,19,25,26'),(146,'2017','3','4,5,11,12,18,19,25,26'),(147,'2017','4','2,3,4,8,9,15,16,22,23,29,30'),(148,'2017','5','1,6,7,13,14,20,21,28,29,30'),(149,'2017','6','3,4,10,11,17,18,24,25'),(150,'2017','7','1,2,8,9,15,16,22,23,29,30'),(151,'2017','8','5,6,12,13,19,20,26,27'),(152,'2017','9','2,3,9,10,16,17,23,24'),(153,'2017','10','1,2,3,4,5,6,7,8,14,15,21,22,28,29'),(154,'2017','11','4,5,11,12,18,19,25,26'),(155,'2017','12','2,3,9,10,16,17,23,24,30,31'),(156,'2018','1','1,6,7,13,14,20,21,27,28'),(157,'2018','2','3,4,10,15,16,17,18,19,20,21,25'),(158,'2018','3','3,4,10,11,17,18,24,25,31'),(159,'2018','4','1,5,6,7,14,15,21,22,29,30'),(160,'2018','5','1,5,6,12,13,19,20,26,27'),(161,'2018','6','2,3,9,10,16,17,18,23,24,30'),(162,'2018','7','1,7,8,14,15,21,22,28,29'),(163,'2018','8','4,5,11,12,18,19,25,26'),(164,'2018','9','1,2,8,9,15,16,22,23,24'),(165,'2018','10','1,2,3,4,5,6,7,13,14,20,21,27,28'),(166,'2018','11','3,4,10,11,17,18,24,25'),(167,'2018','12','1,2,8,9,15,16,22,23,30,31'),(168,'2019','1','1,5,6,12,13,19,20,26,27');
-----------------------------------------------------------------------------------------------------
### 判断是否节假日 true 是 false 否
DROP FUNCTION IF EXISTS fCheckHoliday ;
DELIMITER //
CREATE FUNCTION `fCheckHoliday`(s DATETIME)
RETURNS BOOLEAN
BEGIN
DECLARE a, b, c, d, e SMALLINT UNSIGNED DEFAULT 0;
DECLARE holiday VARCHAR(50);
SET a = (SELECT DATE_FORMAT(s, '%Y') FROM DUAL) ; -- 传入时间的年
SET b = (SELECT DATE_FORMAT(s, '%m') FROM DUAL) ; -- 传入时间的月
SET c = (SELECT DATE_FORMAT(s, '%d') FROM DUAL) ; -- 传入时间的日
DROP TABLE IF EXISTS `holiday`;
CREATE TABLE `holiday` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`year` varchar(20) NOT NULL,
`month` varchar(20) NOT NULL,
`day` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=169 DEFAULT CHARSET=utf8;
/*Data for the table `holiday` */
insert into `holiday`(`id`,`year`,`month`,`day`) values (113,'2015','6','20,21,22,27,28'),(114,'2015','7','4,5,11,12,18,19,25,26'),(115,'2015','8','1,2,8,9,15,16,22,23,29,30'),(116,'2015','9','3,4,5,12,13,19,20,26,27'),(117,'2015','10','1,2,3,4,5,6,7,11,17,18,24,25,31'),(118,'2015','11','1,7,8,14,15,21,22,28,29'),(119,'2015','12','5,6,12,13,19,20,26,27'),(132,'2016','1','1,2,3,9,10,16,17,23,24,30,31'),(133,'2016','2','7,8,9,10,11,12,13,20,21,27,28'),(134,'2016','3','5,6,12,13,19,20,26,27'),(135,'2016','4','3,4,5,9,10,16,17,23,24'),(136,'2016','5','1,2,3,7,8,14,15,21,22,28,29'),(137,'2016','6','4,5,9,10,11,18,19,25,26'),(138,'2016','7','2,3,9,10,16,17,23,24,30,31'),(139,'2016','8','6,7,13,14,20,21,27,28'),(140,'2016','9','3,4,10,11,15,16,17,24,25'),(141,'2016','10','1,2,3,4,5,6,7,15,16,22,23,29,30'),(142,'2016','11','5,6,12,13,19,20,26,27'),(143,'2016','12','3,4,10,11,17,18,24,25,31'),(144,'2017','1','1,2,7,8,14,15,21,22,27,28,29,30,31'),(145,'2017','2','1,2,5,11,12,18,19,25,26'),(146,'2017','3','4,5,11,12,18,19,25,26'),(147,'2017','4','2,3,4,8,9,15,16,22,23,29,30'),(148,'2017','5','1,6,7,13,14,20,21,28,29,30'),(149,'2017','6','3,4,10,11,17,18,24,25'),(150,'2017','7','1,2,8,9,15,16,22,23,29,30'),(151,'2017','8','5,6,12,13,19,20,26,27'),(152,'2017','9','2,3,9,10,16,17,23,24'),(153,'2017','10','1,2,3,4,5,6,7,8,14,15,21,22,28,29'),(154,'2017','11','4,5,11,12,18,19,25,26'),(155,'2017','12','2,3,9,10,16,17,23,24,30,31'),(156,'2018','1','1,6,7,13,14,20,21,27,28'),(157,'2018','2','3,4,10,15,16,17,18,19,20,21,25'),(158,'2018','3','3,4,10,11,17,18,24,25,31'),(159,'2018','4','1,5,6,7,14,15,21,22,29,30'),(160,'2018','5','1,5,6,12,13,19,20,26,27'),(161,'2018','6','2,3,9,10,16,17,18,23,24,30'),(162,'2018','7','1,7,8,14,15,21,22,28,29'),(163,'2018','8','4,5,11,12,18,19,25,26'),(164,'2018','9','1,2,8,9,15,16,22,23,24'),(165,'2018','10','1,2,3,4,5,6,7,13,14,20,21,27,28'),(166,'2018','11','3,4,10,11,17,18,24,25'),(167,'2018','12','1,2,8,9,15,16,22,23,30,31'),(168,'2019','1','1,5,6,12,13,19,20,26,27');
-----------------------------------------------------------------------------------------------------
### 判断是否节假日 true 是 false 否
DROP FUNCTION IF EXISTS fCheckHoliday ;
DELIMITER //
CREATE FUNCTION `fCheckHoliday`(s DATETIME)
RETURNS BOOLEAN
BEGIN
DECLARE a, b, c, d, e SMALLINT UNSIGNED DEFAULT 0;
DECLARE holiday VARCHAR(50);
SET a = (SELECT DATE_FORMAT(s, '%Y') FROM DUAL) ; -- 传入时间的年
SET b = (SELECT DATE_FORMAT(s, '%m') FROM DUAL) ; -- 传入时间的月
SET c = (SELECT DATE_FORMAT(s, '%d') FROM DUAL) ; -- 传入时间的日
资源评论

- IT黑旋风2018-11-29的说法肯定会是开放几点开始打扫房间看

萤火虫
- 粉丝: 0
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 计算机辅助工艺设计实验指导书.doc
- 小学英语网络培训研修计划.doc
- (完整版)办公自动化课件.ppt
- 南邮软件设计报告样本.doc
- 网络意见领袖的培养机理.pdf
- 智能家居项目计划书样本.doc
- 网络学院企业规范化管理.doc
- 计算机专业实习报告范文大全.pdf
- 在成绩统计Excel中的数据筛选功能.doc
- 中学教育信息化建设实施方案.docx
- 核心网项目管理关键流程汇编.doc
- 基于PLC控制的小型自动化立体仓库设计.doc
- 科龙电器集团网站建设方案书.doc
- 供热工程-第九章-热水网络的水力计算及水压图-PPT课件.ppt
- 华为的ID开发模式VS敏捷项目管理.pptx
- 天连锁酒店网络营销策划案和网站分析优化.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
