2018 06 30 第五十五天 oracle

2021-08-21 03:31:27 字數 2950 閱讀 4412

一、分頁查詢

--rowid

:對應著資料庫中的一條記錄,是當一條記錄被寫入資料庫的時候,由資料庫管理系統生成。資料庫系統自己來維護。

select

*from

emp

where

rowid

='aaae51aaeaaaahlaaa'

--rownum  

被稱為偽列。不是資料庫中存在

的乙個字段值。而是根據查詢到的結果,新增上的乙個邏輯順序編號。

select

rownum

,e.*

from

empe

--顯式查詢的前

5條資料

select

rownum

,e.*

from

empe

where

rownum

<=5--

查詢6-10

條的資料

rownum

永遠是從1開始

,第一條滿足條件的資料

rownum

的值是1.  

不能使用

>

=  select

rownum

,e.*

from

empe

where

rownum

>=

6and

rownum

<=

10--

查詢工資從高到低的前

5條資料

select

*from

emp

order

bysal

desc

---新增

rownum

select

e.*

from

empe

order

bysal

desc

--使用子查詢

select

rownum

,t.*

from

(select

e.*

from

empe

order

bysal

desc

)t

where

rownum

<=5--

查詢6-10條-

-通用的公式

select

rownum

,t2.*

from

(select

rownum

r,t.*

from

(select

e.*

from

empe

order

bysal

desc

)t

where

rownum

<=

15--page*count

)t2

where

t2.r

>

10--

(page-1

)*count

--count

變數代表一頁顯式的條數

--page

當前是第幾頁

二、三大正規化

優點:結構合理、冗餘較小、盡量避免插入刪除修改異常。

缺點:效能降低、多表查詢比單錶查詢速度慢。

資料庫的設計應該根據當前情況和需求做出靈活的處理。

在實際設計中,要整體遵循正規化理論。

如果在某些特定的情況下還死死遵循正規化也是不可取的,因為可能降低資料庫的效率,此時可以適當增加冗餘而提高效能。

第一正規化:字段不能再分。

第二正規化:不存在區域性依賴(聯合主鍵)。

第三正規化:不含傳遞依賴(不含間接依賴)。

使用正規化可以減少冗餘,但是會降低效能

特定表的的設計可以違反第三正規化,增加冗餘提高效能。

資料庫表之間的關係:

一對一:學生和學生證

一對多:學生和班級

多對多:學生和課程

如何表示資料庫表之間的關係?

使用外來鍵

資料庫外來鍵關係表示的其實是一種一對多關係

一對一:外來鍵+唯一

多對多:引入中間表,把乙個多對多表示為兩個一對多

程式設計第五十五天

c algorithm標頭檔案中find演算法 include iostream include algorithm using namespace std void printelem int elem int main int i find ia,ia 7,9 在整個陣列中查詢元素 9 int ...

實習篇 第五十五天

今天和明天的任務就是完成介面文件的設計,也學是為我請假的原因,就把這個我認為不複雜的任務交給我做,但是我又錯了 好像我就沒有對過 寫介面文件真的是不容易,首先要把需求搞懂,然後把每個介面的需要傳入的引數和傳出的引數列出來,並且還要知道請求報文和響應報文!這一點我需要和對應的人協商欄位與報文,我光看其...

leetcode 簡單 第五十五題 打家劫舍

你是乙個專業的小偷,計畫偷竊沿街的房屋。每間房內都藏有一定的現金,影響你偷竊的唯一制約因素就是相鄰的房屋裝有相互連通的防盜系統,如果兩間相鄰的房屋在同一晚上被小偷闖入,系統會自動報警。給定乙個代表每個房屋存放金額的非負整數陣列,計算你在不觸動警報裝置的情況下,能夠偷竊到的最高金額。示例 1 輸入 1...