zoukankan      html  css  js  c++  java
  • 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);
    
  • 相关阅读:
    [SDOI2015] 序列统计
    [BZOJ3514] Codechef MARCH14 GERALD07加强版
    [CF1082E] Increasing Frequency
    [CF1093G] Multidimensional Queries
    [HNOI2013] 切糕
    [HEOI2017] 寿司餐厅 + 最大权闭合子图的总结
    [BZOJ3771] Triple
    [HEOI2016] 字符串
    [总结] 后缀数组学习笔记
    [Luogu 3613] 睡觉困难综合征
  • 原文地址:https://www.cnblogs.com/wzbury/p/13589677.html
Copyright © 2011-2022 走看看