一.三種資料庫管理系統簡介:
oracle是甲骨文公司
的一款關聯式資料庫管理系統
。它是一種高效率、可靠性好、適應高吞吐量的資料庫。
mysql 是ab公司開發,目前屬於oracle
旗下公司乙個關係型資料庫管理系統
, 它是體積小、速度快、總體擁有成本低,開源,提供的介面支援多種語言連線運算元據庫,在web應用方面mysql效能較好。
postgresql是乙個關聯式資料庫管理系統。它是是乙個開源的,免費的,同時非常強大的關係型資料管理系統。
二:sql語法書寫:
基本的語法sql通用,大部分postgresql是可以參考oracle的。
三:日常導數中用到的知識點:
1.關於注釋的寫法
mysql注釋 /*這裡是注釋 */
postgresql和oracle 單行 --這後邊就是注釋
多行 /*這裡是注釋這裡是第二行注釋*/
2.關於分頁或者說查幾條記錄來測試
mysql資料庫分頁
• select * from 表名 limitstartrow,pagesize
postgresql資料庫分頁
• select * from 表名 limitpagesize,offset startrow
oracle資料庫分頁
select* from (select a.*,rownum rc from 表名 whererownum<=endrow) a where a.rc>=startrow
3.關於去重用法或者說業務需求
rownumber() over( partition by col1 order by col2)用法:
表示根據col1分組,在分組內部根據 col2排序,而此函式計算的值就表示每組內部排序後的順序編號(組內連續的唯一的).
4.使用正規表示式:對30*40*50取成 30 40 50各成一列(適用於多位數)
regexp_substr(w.size_s, '[^*]+', 1) ,
regexp_substr(w.size_s, '[^*]+', 1,2) ,
regexp_substr(w.size_s, '[^*]+', 1,3) ,
5.關於時間的寫法
postgresql和oracle operation_time>=date'2017-06-01'
mysql operation_time>= '2017-06-01'
6.關於銀行賬號業務反映自己不會處理
『,』||h.account 字段||『~』||字段 連線符的使用
7.業務提供的編碼過多,在oracle中最多1000個
drop table t_zt_ky_bianma –--刪除臨時表
create table t_zt_ky_bianma --建立臨時表
( customer_no varchar2(25) )
truncate table t_zt_ky_bianma ---清空資料(下次直接用)
-- select count(*) from t_zt_ky_bianma –--查詢驗證
/* 插入編碼 */
select * from t_zt_ky_bianma for update
8.create table detp_temp asselect * from dept 建立臨時表(表中有資料)
it~_%』 escape 『~』 此時_就不是萬用字元了
9.case …when…使用
case
when w.create_order_type is null then--不是返貨
tf.total_fee - tf.resend_fee -tf.unload_fee - tf.cod_amount
else
tf.summary_fee - tf.resend_fee -tf.unload_fee - tf.cod_amount --是返貨
end as fee, -- 開單金額
trunc(sysdate-1)
nvl(r.dropoff_emp_name,r.create_name) 快遞員姓名,
select * from pg_proc wherelower(prosrc) like '%t_exp_delivery_bus%' --查過程
sum(case when aa.isdelete=0and aa.is_waybill =1 then
else
end) 累計已開單,
decode(h.audit_state_code,'201', '同意', '202', '不同意') as 審批狀態
substr(t.target_org_code,1,3) 提取一些字元
union用的比較多union all是直接連線,取到得是所有值,記錄可能有重複 union 是取唯一值,記錄沒有重複
PHP呼叫三種資料庫的方法 1
1 integer mysql connect 主機,使用者名稱,口令 此函式開始乙個對指定主機上的mysql資料庫的連線。若該資料庫位於乙個不同地埠,則在主機名後加上冒號和埠號。所有引數均為可選的,預設情況下分別對應為本地主機 使用者正在執行的指令碼名和空。主機可以是ip位址或網域名稱。在指令碼執...
Mysql常用的三種資料庫引擎比較
innodb 支援事務處理,支援外來鍵,支援崩潰修復能力和併發控制。如果需要對事務的完整性要求比較高 比如銀行 要求實現併發控制 比如售票 那選擇innodb有很大的優勢。如果需要頻繁的更新 刪除操作的資料庫,也可以選擇innodb,因為支援事務的提交 commit 和回滾 rollback 因為i...
PHP呼叫三種資料庫的方法 2
1 integer odbc connect string dsn,string user,string password 連線到乙個odbc資料庫源名字上。2 integer odbc exec integer connection,string query 或 odbc do integer c...