初始化腳本修改:使用工具Navicat Premium,導出指定mysql版本的文件,然后將文件導入到mysql數據庫中,結束;
代碼中腳本修改:
oracle->mysql
sysdate
-> now()
數據類型 clob->longtext
to_char(sysdate,'yyyy-MM-dd HH:mm:ss')
-> date_format(now(),'%Y-%m-%d %H:%i:%s')
to_date('2008-08-08 08:08:08','yyyy-MM-dd HH:mm:ss')
-> str_to_date('2008-08-08 08:08:08','yyyy-MM-dd HH:mm:ss')
trunc(sysdate)
-> date_format(now(), '%Y-%m-%d %H:%i:%s')
sysdate-1
-> date_add(now(),interval -1 day)
注:hql中無法使用date_add;可以采用數據預處理:select date_format(date_add(now(),interval -1 day),'%Y-%m-%d %H:%i:%s') from dual
to_number()
-> cast ('666' as signed) -- signed/char
注:hql中使用as后必須是java中的數據類型integer/string
nvl
-> ifnull
注:hql中可用coalesce代替
問題:hql 數據庫使用oracle時使用nvl方法,切換mysql數據庫后無法使用nvl,需采用coalesce
rownum
-> select (@rownum:=@rownum+1) from (select @rownum:=0) t; 例:from a,t;
注:如果后面有join,需要from t,a;
rownum=1
-> limit 1
order by create_date nulls last
-> order by isnull(create_date)
decode
CURRENT_DATE()
exists
start with
connect_by_root connect by
ORDER SIBLINGS BY