最近在转一个原来使用oracle,打算改为mysql的系统,有些常用的oracle函数的mysql实现顺便整理了下,主要是系统中涉及到的(其实原来是专门整理过一个详细doc的,只是每次找word麻烦)。
特性 | oracle | mysql |
字符串转日期 | to_date | str_to_date |
日期类型 |
date 公元前4712年1月1日至公元9999年12月31日 |
datetime:取值范围:1000-01-01 00:00:00 到 9999-12-31 23:59:59 timestamp:取值范围:1970-01-01 00:00:00 到 2037-12-31 23:59:59 |
日期转字符串 | to_char | date_format |
base64 | utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw(‘BASE64_STR’))) | to_base64('BASE64_STR') |
空值 | nvl(col1,'default value') | ifnull(col1,'99999999') |
逻辑判断 | decode(ttype,1,’a',2,’b',3,’c',’d') | if(ttype=1, 'a',if(ttype=2,'b', if(ttype =3, 'c', 'd'))) |
ID | 序列 | auto_increment |
数字转为字符串类型 | to_char() | concat(num_col,'') |
字符串转为数字类型 | to_number() | cast('1' as signed int) |
到微秒的时间 | systimestamp | sysdate(6) |