MySQL中实现中文格式日期获取


MySQL 代码


-- 数字年份转中文
CREATE function yearconvert(in_date VARCHAR(20))
RETURNS VARCHAR(20)
BEGIN
DECLARE conusestr VARCHAR(20);
SET conusestr='〇一二三四五六七八九';

return (CONCAT(SUBSTR(conusestr,SUBSTR(in_date,1,1)+1,1),SUBSTR(conusestr,SUBSTR(in_date,2,1)+1,1),
		SUBSTR(conusestr,SUBSTR(in_date,3,1)+1,1),SUBSTR(conusestr,SUBSTR(in_date,4,1)+1,1),'年'));
END$$
delimiter ;

-- 数字月份转中文
delimiter $$
CREATE FUNCTION monthconvert(in_date VARCHAR(20))
RETURNS VARCHAR(20)
BEGIN
DECLARE conusestr VARCHAR(20);
SET conusestr='一二三四五六七八九';
CASE SUBSTR(in_date,1,1)
	WHEN '0' THEN
		RETURN (CONCAT(SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'月'));
	ELSE
		 RETURN (CONCAT('十',SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'月'));	
END CASE;
END $$
delimiter ;

-- 数字日转中文
delimiter $$
CREATE FUNCTION dayconvert(in_date VARCHAR(20))
RETURNS VARCHAR(20)
BEGIN
DECLARE conusestr VARCHAR(20);
SET conusestr='一二三四五六七八九';
CASE SUBSTR(in_date,1,1)
	WHEN '0' THEN
		RETURN (CONCAT(SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'日'));
	WHEN '1' THEN
		RETURN (CONCAT('十',SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'日'));	
	WHEN '2' THEN
		RETURN (CONCAT('二十',SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'日'));
	WHEN '3' THEN
		RETURN (CONCAT('三十',SUBSTR(conusestr,SUBSTR(in_date,2,1),1),'日'));
	ELSE
		 RETURN '无效';
END CASE;
END $$
delimiter ;

函数调用

select yearconvert(2019);
select monthconvert(11);
select dayconvert(21);


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM