DELIMITER $$
USE `dis`$$
DROP FUNCTION IF EXISTS `f_check_date`$$
CREATE DEFINER=`root`@`%` FUNCTION `f_check_date`(data_date VARCHAR(10)) RETURNS INT(10)
BEGIN
DECLARE v_flag INT;#1代表是月末日期,0代表非月末
SELECT YEAR(DATE_FORMAT(data_date,'%Y%m%d')) INTO @year;
SELECT MONTH(DATE_FORMAT(data_date,'%Y%m%d')) INTO @v_month;
SELECT DAY(DATE_FORMAT(data_date,'%Y%m%d')) INTO @v_day;
#1,3,5,7,8,10,12月末日期为31号
CASE
WHEN @v_month IN (1,3,5,7,8,10,12) THEN
IF @v_day = 31 THEN
SET v_flag = 1; #月末日期
ELSE SET v_flag=0;#非月末日期
END IF;
#4,6,9,11月末为30号
WHEN @v_month IN (4,6,9,11) THEN
IF @v_day = 30 THEN
SET v_flag =1;#月末日期
USE `dis`$$
DROP FUNCTION IF EXISTS `f_check_date`$$
CREATE DEFINER=`root`@`%` FUNCTION `f_check_date`(data_date VARCHAR(10)) RETURNS INT(10)
BEGIN
DECLARE v_flag INT;#1代表是月末日期,0代表非月末
SELECT YEAR(DATE_FORMAT(data_date,'%Y%m%d')) INTO @year;
SELECT MONTH(DATE_FORMAT(data_date,'%Y%m%d')) INTO @v_month;
SELECT DAY(DATE_FORMAT(data_date,'%Y%m%d')) INTO @v_day;
#1,3,5,7,8,10,12月末日期为31号
CASE
WHEN @v_month IN (1,3,5,7,8,10,12) THEN
IF @v_day = 31 THEN
SET v_flag = 1; #月末日期
ELSE SET v_flag=0;#非月末日期
END IF;
#4,6,9,11月末为30号
WHEN @v_month IN (4,6,9,11) THEN
IF @v_day = 30 THEN
SET v_flag =1;#月末日期