數據庫面試常見問題
數據庫面試常見問題有哪些呢?你想知道嗎?下面是小編整理的數據庫面試常見問題,歡迎大家閱讀!
1、SQL的表連接方式有哪些?
SQL中連接按結果集分爲:內連接,外連接,交叉連接
內連接:inner join on,兩表都滿足的組合。內連接分爲等值連接,不等連接,自然連接。
等值連接:兩表中相同的列都會出現在結果集中。
自然連接:兩表中具體相同列表的列會合併爲同一列出現在結果集中。
外連接:分爲左(外)連接,右(外)連接,全連接
左(外)連接:A left (outer) join B,以A表爲基礎,A表的全部數據,B表有的組合,沒有的爲null。
右(外)連接:A right(outer) join B,以B表爲基礎,B表的全部數據,A表有的組合,沒有的位null。
全連接:A full (outer) join 兩表相同的組合在一起,A表有,B表沒有的數據(顯示爲null),同樣B表有,A表沒有的顯示爲null。
交叉連接:cross join,就是笛卡爾乘積。
2、三範式
1NF:表中的字段都是單一屬性,不再可分。
2NF:在1NF的基礎上,表中所有的非主屬性都必須完全依賴於任意一組候選鍵,不能僅依賴於候選鍵中的某個屬性。
3NF:在2NF的基礎上,表中所有的屬性都不依賴其他非主屬性。
簡單的說就是:1NF表示每個屬性不可分割,2NF表示非主屬性不存在對主鍵的部分依賴,3NF表示不存在非主屬性對主鍵的依賴傳遞。
3、表的操作
表的創建:create table 表名 (列名1 類型 約束,列2 類型 約束…)
表的刪除: 表名
表的更改(結構的更改,不是記錄的更新):alter table 表名 add|drop 列名|約
束名
插入記錄: into 表名…values…
更新記錄:表名 set 列名=值 where 條件
刪除記錄: from 表名 where 條件
4、數據的完整性
數據完整性指的是存儲在數據庫中的數據的一致性和準確性。
完整性分類:
(1)實體完整性:主鍵值必須唯一且非空。(主鍵約束)
(2) 引用完整性(也叫參照完整性):外鍵要麼爲空,要麼引用主表中存在的記錄。(外鍵約束)。
(3)用戶自定義完整性:針對某一具體關係數據庫中的約束條件。
5、SQL的查詢優化
(1)從表連接的角度優化:儘量使用內連接,因爲內連接是兩表都滿足的行的組合,而外連接是以其中一個表的全部爲基準。
(2)儘量使用存儲過程代替臨時寫SQL語句:因爲存儲過程是預先編譯好的SQL語句的集合,這樣可以減少編譯時間。
(3)從索引的角度優化:對那些常用的查詢字段簡歷索引,這樣查詢時值進行索引掃描,不讀取數據塊。
(4)還有一些常用的select優化技巧:
(5)A.只查詢那些需要訪問的字段,來代替select*
B、將過濾記錄越多的where語句向前移:在一個SQL語句中,如果一個where條件過濾的數據庫記錄越多,定位越準確,則該where條件越應該前移。
6、索引的作用,聚集索引與非聚集索引的區別
索引是一個數據庫對象,使用索引,可以是數據庫程序無須對整個數據進行掃描,就可以在其中找到目標數據,從而提高查找效率。索引的底層採用的是B樹。
聚集索引:根據記錄的key再表中排序數據行。
非聚集索引:獨立於記錄的結構,非聚集所以包含的key,且每個鍵值項都有指向該簡直的.數據行的指針。
聚集索引與非聚集索引的區別:
(1)聚集索引的物理存儲按索引排序,非聚集所以的物理存儲不按索引排序。
(2) 聚集索引插入,更新數據的速度比非聚集索引慢,單查詢速度更快。
(3) 聚集索引的葉級結點保存的是時間的數據項,而非聚集結點的葉級結點保存的是指向數據項的指針。
(4)一個表只能有一個聚集索引(因爲只有一種排序方式),但可以有多個非聚集索引。
7、存儲過程與函數的區別
(1)函數有返回值,存儲過程沒有返回值。
(2) 因爲存儲過程沒有返回值,所以不能將存儲過程的執行結果賦值給變量;函數有返回值類型,調用函數時,可以將函數的執行結果賦值給變量。也就是說,函數可以在select語句中使用,而存儲過程則不能。
-
遼寧省大學聯考志願網報系統6月19日開通
大學聯考志願填報時間我省大學聯考志願網報系統將於2017年6月19日開通,考生可根據今年的招生計劃提前進行大學聯考志願預報,大學聯考成績發佈後,再進行正式填報、調整和確認,志願填報截止時間將在網上填報志願系統標註提醒並通過遼寧招生考試之窗網站公佈。從2017年6月19日開始到志...
-
吉訊大學生職業生涯規劃系統
又叫職業生涯設計,是指個人與組織相結合,在對一個人職業生涯的主客觀條件進行測定、分析、總結的基礎上,對自己的興趣、愛好、能力、特點進行綜合分析與權衡,結合時代特點,根據自己的職業傾向,確定其最佳的職業奮鬥目標,併爲實現這一目標做出行之有效的安排。下面是小...
-
黑雲一鍵重裝系統步驟
黑雲一鍵重裝系統新版上線,提供了更智能的`兩種安裝模式,有效解決重裝系統步驟多,不安全,成功率低等問題,這是我爲大家帶來的黑雲一鍵重裝系統步驟,希望大家喜歡。黑雲一鍵重裝系統步驟下載打開黑雲一鍵重裝系統工具,進入黑雲安裝客服端、點擊“立即重裝系統”,進入第...
-
2017最新現代信息管理中數據庫的運用現狀與對策
現代信息管理中數據庫的運用現狀與對策對於生活在信息社會的人們來講,每天需要處理很多信息,所以進一步促進了計算機數據庫的應用和發展,尤其是在現代信息管理工作中,計算機數據庫得到了非常廣泛的應用。因此,本文通過簡要介紹目前在現代信息管理工作計算機數據庫的...