mysql一般採用自動增長型別,mysql每張表只能有乙個自增字段,這個自增字段既可以是主鍵也可以是非主鍵,要注意的是把自增欄位作為非主鍵的時候必須為其新增唯一索引,一般都把自增欄位作為主鍵。oracle 中序列採用sequence, create sequence 序列號的名稱。
引號的處理
mysql中單引號,雙引號都可以使用,oracle中只能用單引號。
dual虛擬表的使用
mysql中沒有dual表,直接select 1即可。oracle中要滿足select from結構,就引入了虛擬表dual。
分頁的處理
mysql用limit進行分頁,limit接收兩個引數,第乙個引數表示偏移量,第二個引數表示返回的條數,初始記錄行的偏移量是 0 。
select * from table limit 5,10; 返回第6-15條資料
select * from table limit 5,-1; 返回第5條到最後
select * from table limit 5; 返回前5條記錄行
oracle利用rownum進行分頁。
查詢6-10條資料
第一種方式:
select * from
(select a.*, rownum as rn from css_bl_view a
where capture_phone_num = '(1) 925-4604800'
) bwhere b.rn between 6 and 10;
第二種實現方式:
select * from css_bl_view a
where capture_phone_num = '(1) 925-4604800'
and rownum <=10
minus
select * from css_bl_view a
where capture_phone_num = '(1) 925-4604800'
and rownum <= 5
第三種實現方式:
select * from
(select a.*, rownum as rn from css_bl_view a
where capture_phone_num = '(1) 925-4604800'
and rownum <= 10
) bwhere b.rn > 5;
select count(*) from css_bl_view a
where rownum > 1; 錯誤
正確示例:
select object_id,object_name
from (select object_id,object_name, rownum as rn from t_test1)
where rn > 1;
select rownum from emp; 不報錯
select e.rownum from emp e; 報錯
select e.*,rownum from emp e; 不報錯
select *,rownum from emp; 報錯
MySql和Oracle的區別
1.mysql和oracle的日期轉換 mysql中有2種日期格式date和time,oracle只有一種日期格式date。oracle select to char sysdate,yyyy mm dd from dual oracle select to char sysdate,hh24 mi...
mysql和oracle的區別
兩者相比較的話,簡單的說,mysql比較小,而且免費,開源的緣故,現在也很健壯,若不是大型應用的話,mysql足以應付一切。oracle比較龐大,整個體系都很健全。簡單的說mysql是實用很好用,oracle就是很好很強大。這樣的說法我認為還是不夠確切的,實際上,用mysql支撐的google的資料...
MySQL和Oracle的區別
自己學習筆記 不是原創!1 mysql是乙個開源關係型資料庫管理系統,免費使用 oracle是乙個物件關聯式資料庫管理系統,收費使用。2.資料庫的安全性 mysql使用三個引數來驗證使用者,即使用者名稱,密碼和位置 oracle使用了許多安全功能,如使用者名稱,密碼,配置檔案,本地身 份驗證,外部身...