您當前的位置:首頁 > 歷史

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)

標簽: Oracle  MySQL  join  -%  111