Oracle和MySQL的區別(持續更新)
作者:由 土豆兒 發表于 歷史時間:2020-09-23
近期工作中有接觸Oracle,發現和MySQL還是有一些語法使用上的差別,將常用的、遇到的總結如下~~~
1。oracle只能用單引號,mysql單引號,雙引號都可以;
2。oracle的group by中不能使用別名,mysql可以;
3。oracle中的表名取別名時不能加as,mysql可以;
4。oracle除了可以使用concat()函式連線字串以外,還可以使用“‖”這個符號連線,mysql只能使用concat();
5。oracle用rownum獲取前n條記錄,並且作為where條件的一部分:where rownum <= 10,mysql用limit獲取前n條記錄,不是where條件的一部分;
6。oracle的左右連線除了left join,right join等之外還可以用(+)來實現,mysql只能用left join,right join;
7。【函式相關】(前oracle,後mysql)
①nvl()對應ifnull(),nvl2()對應if(),DECODE()對應case when then else end;
②當前時間sysdate對應now();
時間轉換成字串型時間,oracle是to_char(sysdate,‘YYYY-MM-DD’),mysql是date_format(now(),‘%Y-%m-%d’);
字串型時間轉換成時間型別,oracle是to_date(sysdate,‘YYYY-MM-DD’),mysql是str_to_date(now(),‘%Y-%m-%d’);
③to_char(111)對應cast(111 as char(3)),to_number(‘111’)對應cast(‘111’ as SIGNED INT)