美文网首页
Mysql 函数字符串转日期

Mysql 函数字符串转日期

作者: 王滕辉 | 来源:发表于2021-11-08 14:19 被阅读0次

日常数据库中包含日期的字段,但是是用varchar存储的,导致格式不统一的
在使用数据格式化成date时是很有用的一个函数。

StringDate

CREATE DEFINER=`root`@`%` FUNCTION `StringDate`(  str varchar(100) ) RETURNS date
    DETERMINISTIC
BEGIN

     DECLARE str2 VARCHAR(100);
     DECLARE str3 VARCHAR(100);
     
     set str2 = StringNULL(str);
     if str2 is null then 
            return null;
     end if;
     
     set str2 = REPLACE(str2,'/','-');
     set str2 = REPLACE(str2,'.','-');
     set str2 = REPLACE(str2,'——','-');
     set str2 = REPLACE(str2,'—','-');
     set str2 = REPLACE(str2,'*','-');
     set str2 = REPLACE(str2,'、','-');
     set str2 = REPLACE(str2,'\\','-');
     set str2 = REPLACE(str2,',','-');
     set str2 = REPLACE(str2,'。','-');
     set str2 = REPLACE(str2,'_','-');
     
     if LENGTH(str2) = 10 then 
          set str3 = SUBSTRING_INDEX(str2,'-',1);
         if cast(str3 as   SIGNED   INTEGER) > 1700 then 
            return STR_TO_DATE(str2,'%Y-%m-%d');
         else
            return STR_TO_DATE(str2,'%d-%m-%Y');
         end if;
         elseif LENGTH(str2) = 8 then 
          set str3 = SUBSTRING(str2,0,4);
         if cast(str3 as   SIGNED   INTEGER) > 1700 then 
            return STR_TO_DATE(str2,'%Y%m-%d');
         else
            return STR_TO_DATE(str2,'%d%m%Y');
         end if;
     end if;
     
END
image.png

相关文章

  • 日期转换和日期比较

    字符串转日期 / 转时间戳 字符串转日期函数: str_to_date(string:timestr,string...

  • MySQL数据库:函数和事务

    一、函数 MySQL数据库中提供了很丰富的函数。MySQL函数包括数学函数、字符串函数、日期和时间函数、条件判断函...

  • mysql的内置函数

    今天讲一讲 mysql 中常用的内置函数有哪些: 字符串函数 日期函数 数学函数 字符串函数 LENGTH(str...

  • Mysql 函数字符串转日期

    日常数据库中包含日期的字段,但是是用varchar存储的,导致格式不统一的在使用数据格式化成date时是很有用的一...

  • MySQL函数总结

    MySQL数据库提供了很多函数包括: 数学函数; 字符串函数; 日期和时间函数; 条件判断函数; 系统信息函数; ...

  • Date类型

    Date类型函数的解释 测试函数 Date转时间戳 转UTC时间的秒 毫秒秒转时间 字符串和日期相互转换 字符串转...

  • MySQL常用函数

    MySQL常用函数分为四种:1、字符串函数:用于处理字符串2、数值函数:用于处理数字3、日期和时间函数4、系统信息...

  • MYSQL日期转换(最全!!!)

    SQL日期转字符串,以及字符串转日期

  • MySQL语法入门(一)

    MySQL语法入门(一) 基本运算符使用 基本数学函数使用 基本字符串函数使用 基本日期时间函数使用

  • 2019-03-21mysql时间问题

    mysql时间与字符串之间相互转换 1.时间转字符串 DATE_FORMAT(日期,格式字符串) SELECT D...

网友评论

      本文标题:Mysql 函数字符串转日期

      本文链接:https://www.haomeiwen.com/subject/hovuzltx.html