oracle减法函数mius_Oracle常用函数及其用法
01、入門Oracle
本章目標:
掌握oracle安裝、啟動和關閉
基本管理以及常用工具
簡單備份和恢復
熟練使用sql,掌握oracle常用對象
掌握數據庫設計和優化基本方法
oracle數據庫:一系列物理文件的集合
一個實例是對應一個數據庫,但是在12c中(c代表云)RAC集群,可以多個實例對應一個數據庫
03、SQL編程
1.oracle中between and 為閉區間,mysql中為開區間
2.修改表名語句:alter table teacher rename column gandar to gender;
3.oracle中 兩個單引號表示一個引號,例如:
select 'insert into dept values('''||deptno||''','''||dname||''','''||loc||''');' from dept order by deptno
效果如下:
4.把能過濾最多數據的條件寫在最后,會比較優化sql
5.oracle函數:用于執行特定操作
包括:單行函數、聚合函數、分析函數
要求:函數帶有一個或多個參數,且返回一個值
1)單行函數:數字、字符、日期、轉換、其他
查詢每一行只返回一個值
2)聚合函數:基于一組行來返回結果
avg、min、max、sum、count
having字句:用于指定group by 子句檢索行的條件
3)分析函數:根據一組行來計算聚合值,累計排名,返回多個行
row_number 、rank、 dense_rank
4)集合操作符:union、 union all、intersect、minus
將兩個查詢的結果組合成一個結果
select tname,deptno,rank() over(partition by deptno order by sal) rank,dense_rank() over(partition by deptno order by sal),
row_number() over(partition by deptno order by sal),row_number() over(order by sal) row_number from teacher
sql分析:rank()允許有并列排名,下一排名繼續從上一排名結束開始;dense_rank()允許又并列排名,下一排名會跳過人數占用;row_number() 不允許有并列排名。partition by 根據什么分組;order by 根據什么進行排名。
查詢結果如下圖:
6.oracle分頁查詢
偽列:像一個表列,不存儲在表中,偽列可以從表中查詢,但不能增刪改
常用偽列:rowid、rownum
rowid:表中行的存儲地址,可以唯一標識數據庫中的一行,可以通過rowid快速定位表中一行。比索引都快
rownum:是查詢返回的結果集中行的序號,可以使用他來限制查詢返回的行數
分頁思想-分三層實現:
1)加限制條件,有一個結果集
2)給結果集過濾最大的范圍(<=最大值)
3)給結果過濾出最小的范圍(從第幾條開始)
04、數據庫設計
本章目標:
1.理解數據庫的規范化--三大范式
2.了解設計數據庫的步驟
3.掌握如何繪制數據庫的E-R圖
1.三大范式
第一范式:目標是確保每列的原子性,如果每列都是不可再分的最小數據單元,則滿足第一范式
第二范式:關系滿足1NF,并且除了主鍵以外的其他列都依賴于該主鍵,則滿足第二范式
第三范式:如果一個關系滿足2NF,并且除了主鍵以外的其他列都部傳遞以來與其他列,則滿足第三范式
2.設計步驟
1)收集信息
2)標識對象
3)標識對象的屬性
4)標識對象之間的關系
注:在實際開發中一般不會建立主外鍵,而是使用邏輯關聯來操作。
3.繪制E-R圖
使用PowerDesigner來繪制E-R圖
總結
以上是生活随笔為你收集整理的oracle减法函数mius_Oracle常用函数及其用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: XML工作总结
- 下一篇: 修改citrix 默认侦听端口的命令和X