SQL崗位30個面試題,SQL面試問題及答案
SQL崗位30個面試題,SQL面試問題及答案:
1. 什麼是SQL?
SQL(結構化查詢語言)是一種設計用於檢索和運算元據的資料庫。它屬於美國國家標準協會(ANSI)的一種標準,可用於執行Select(選擇)、Update(更新)、Delete(刪除)和Insert(插入)等資料任務。
2. 資料庫中的表和欄位是什麼?
表是在具有列和行的模型中設計的資料集合。在表中,指定了列數稱為欄位,但未定義行數稱為記錄。
3. 什麼是資料庫?
資料庫是有序形式的一組資訊,用於訪問、儲存和檢索資料。
4. DBMS的型別是什麼?
DBMS是一個控制資料維護和使用的程式,它被認為是管理資料的檔案管理器。有四種型別的DBMS:
· 關係DBMS
· 分層DBMS
· 網路DBMS
· 物件導向的關係DBMS
最有用的DBMS是Relational DBMS。它為資料提供了一個關係運算子。
5. 編寫一些不同型別的SQL命令
SQL命令分為以下型別:
· DDL(資料定義語言) - 用於定義資料庫的結構。
· DCL(資料控制語言) - 用於為使用者提供許可權。
· DML(資料操作語言) - 用於管理資料。
· DQL(資料查詢語言) - 所有命令都在SQL中,用於檢索DQL中的資料。
· TCL(事務控制語言) - 用於管理DML所做的更改。
6. SQL中的檢視是什麼?
它包含來自一個或多個表的行和列,可以定義為虛擬表。它消耗的記憶體較少。
句法:
CREATE VIEW view_name AS
SELECT column_name1, column_name2
FROM table_name
WHERE CONDITION;
7. 什麼是SQL中的Joins(連線)?
Join用於從相關的行和列中檢索資料。它在兩個或多個表之間工作,並且它從兩個表返回至少一個匹配。
Joins型別是:
· Right Join (右連線)
· Left Join(左連線)
· Inner Join(內連線)
· Outer Join(外連線)
· Self-Join (自連線)
· Cross Join(交叉連線)
· Full Join(全連線)
8. SQL中的Query(查詢)是什麼?
資料庫查詢是資料庫表中的資料請求。查詢可以是選擇查詢或任何其他型別的查詢。
9. 什麼是Subquery(子查詢)以及什麼是Types(型別)?
子查詢是查詢的一部分。外部查詢已知主查詢,內部查詢識別子查詢。始終首先執行子查詢,並將結果傳遞給主查詢。
10. 什麼是Autoincrement(自動增量)?
Autoincrement是一個關鍵字,用於在表中插入新記錄時生成數字。
11. SQL中的Constraints(約束)是什麼?
它可用於設定表中資料型別的限制。在建立或更新表語句時,可以使用約束。一些限制是:
· NOT NULL
· PRIMARY KEY
· FOREIGN KEY
· UNIQUE
· CHECK
· DEFAULT
12. SQL中有多少Key(鍵),它們如何工作?
SQL中有不同型別的鍵:
· SuperKey(超級金鑰)——一個或多個金鑰的集合被定義為超級金鑰,它用於唯一地標識表中的記錄。主鍵,唯一鍵和備用鍵是超級鍵的子集。
· PrimaryKey(主鍵)——它是表中的一個或多個欄位的集合。它們不接受空值和重複值。並且表中只存在一個主鍵。
· ForeignKey(外來鍵)——在一個表中定義主鍵並在另一個表中定義欄位的鍵被標識為外來鍵。
· UniqueKey(唯一鍵)——除了主鍵之外,表中還有更多鍵,它們只標識記錄,但唯一的區別是它們只接受一個空值但不接受重複值。
· CandidateKey(候選金鑰)——在任何情況下,如果需要,任何候選金鑰都可以作為主鍵。
· CompoundKey(複合鍵)——此鍵是候選鍵和主鍵的組合。
· AlternateKey(備用金鑰)——在任何情況下,如果需要,任何備用金鑰都可以作為主鍵或候選鍵。
13. 什麼是Normalization(規範化)?
規範化是一種設計技術,它以減少資料依賴性的方式排列表,將表分成小模組並按關係連結。
14. 什麼是Denormalization(非規範化)?
非規範化是一種最佳化方法,我們將多餘的資料增加到表中,並在規範化後應用。
15. 什麼是Stored Procedure(儲存過程)?
儲存過程是一組SQL語句,用作訪問資料庫的函式。為了減少網路流量並提高效能,可使用儲存過程。
句法:
CREATE Procedure Procedure_Name
(
//Parameters
)
AS
BEGIN
SQL statements in stored procedures to update/retrieve records
END
16. 什麼是Index(索引)?
索引用於加速查詢的效能。它可以更快地從表中檢索資料。可以在一組列上建立索引。
17. Clustered(群集)和Non-Clustered Index(非群集)索引之間有什麼區別?
聚集索引——有助於輕鬆檢索資料,並且只有一個聚集索引與一個表一起分配。它會更改記錄在資料庫中的儲存方式。
非聚集索引——與聚集索引相比,非聚集索引很慢。並且在非叢集索引的情況下,該表可以具有多個索引,為表建立一個物件,該表是搜尋後指向表的一個點。
18. 什麼是Trigger(觸發器)?
觸發器用於對錶執行特定操作,例如INSERT、UPDATE或DELETE。它是一種儲存過程。動作和事件是觸發器的主要組成部分。執行Action時,事件響應該操作而出現。
19. 資料庫中的Properties(屬性)是什麼?
通常,這些屬性稱為ACID。它們在資料庫事務中起作用。
Atomicity(原子性)——在連線兩個或多個單獨資料的事務中,要麼所有部分都已提交,要麼都沒有。
Consistency(一致性)——事務或者生成新的有效資料狀態,或者如果發生任何失望,則在事務啟動之前將所有資料返回到其狀態。
Isolation(隔離性)——正在進行且尚未提交的事務必須繼續與任何其他操作隔離。
Durability(永續性)——在此操作中,系統儲存已提交的資料,每當事件失敗和系統重新啟動時,所有資料都可在其正確位置獲得。
20. SQL中有多少Statements(語句)?
SQL語句分為幾類:
· 資料定義語言語句
· 資料操作語言語句
· 交易控制宣告
· 會話控制宣告
· 系統控制宣告
· 嵌入式SQL語句
21. 什麼是CLAUSE(字句)?
它被定義為透過為查詢提供條件來設定結果集的限制。他們從整個記錄中過濾掉一些行。
一些SQL的字句是WHERE和HAVING。
22.什麼是Aggregate Functions(聚合函式)?
它是一個返回單個值的數學函式。
SQL中的聚合函式是:
· AVG()——返回平均值
· COUNT()——返回行數
· MAX()——返回最大值
· MIN()——返回最小值
· ROUND()——基於十進位制規範,此函式對數字欄位進行舍入
· SUM()——返回總和
23. 什麼是String Functions(字串函式)?
為了操作字串,我們使用字串函式。其中一些是:
· LEN()——返回值的長度。
· LOWER()——將字元資料轉換為小寫。
· UPPER()——將字元資料轉換為大寫。
· SUBSTRING()——提取字元。
· LTRIM()——從頭開始刪除字串的所有空格。
· RTRIM()——刪除結尾處字串的所有空格。
· CONCAT()——連線函式。
· REPLACE()——更新內容。
24. 什麼是Collation(排序規則)?
排序規則是一組規則,用於確定資料如何透過比較進行排序。例如使用一組規則儲存的字元資料,這些規則定義了正確字元的序列以及型別、重音和區分大小寫。
25. 什麼是Cursor(遊標)?
在系統記憶體中執行SQL語句時,會建立一個臨時工作區,稱為“遊標”。在select語句中,遊標儲存了資訊。遊標可以使用多行,但一次只能處理一行。這組行稱為活動集。
遊標有兩種型別:
· ImplicitCursor(隱式遊標)
· ExplicitCursor(顯式遊標)
26. 什麼是SQL Server?
SQLserver是Microsoft關聯式資料庫管理系統(RDBMS)的一種型別或示例。它在IT環境下提供廣泛的事務處理和商業智慧。
27. SQL中有哪些Operators(運算子)?
運算子是一個保留字,主要用於SQL語句的WHERE子句中以進行操作。
· 算術運算
· 邏輯運算
· 比較運算子()
· 複合運算元()
28. 如何定義NULL值,Blank Space(空格)和ZERO(0)?
Null值是沒有值的欄位。它與0不同。假設有一個表,並且在表中有一個欄位,可以在不新增值的情況下將記錄插入欄位,然後該欄位將以NULL值儲存。
空格是我們提供的值。
0只是一個數字。
29. 什麼是Data Warehouse(資料倉儲)?
資料倉儲被稱為來自多個資訊源的中央資料中心。這些資料可用於線上處理和挖掘。
30. UNIQUE KEY(唯一鍵)和PRIMARY KEY(主鍵)之間有什麼區別?
在表中,應該只有一個主鍵,但在另一種情況下,唯一鍵可以為任意數量。
主鍵不允許NULL值,但唯一鍵允許NULL值。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2648127/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 雲端計算面試題及答案,雲端計算崗位精品面試題面試題
- sql 經典面試題及答案(選課表)SQL面試題
- 30 道 Dubbo 面試題及答案面試題
- 常見面試SQL問題面試SQL
- SQL面試題,快問快答!SQL面試題
- 阿里Jvm必問面試題及答案阿里JVM面試題
- 熱門 Splunk 管理面試問題及答案面試
- 前端必備,JavaScript面試問題及答案前端JavaScript面試
- 40個Java集合面試問題和答案,面試奇葩問題,你掌握了嗎?Java面試
- 24個Jvm面試題總結及答案JVM面試題
- Linux面試題,淺析常見Linux命令面試題及答案Linux面試題
- 雲端計算面試題及答案,雲端計算主要就業崗位面試題就業
- 最全前端開發面試問題及答案整理前端面試
- Java初中級面試題及答案Java面試題
- Java高階面試題及答案Java面試題
- 常見AI面試題及答案AI面試題
- Selenium 高頻面試題及答案面試題
- 碼農面試智力題及答案面試
- 資料庫sql的優化問題的面試題資料庫SQL優化面試題
- 軟體測試崗位的經典面試題面試題
- 騰訊技術崗位筆試&面試題(一)筆試面試題
- 騰訊技術崗位筆試&面試題(二)筆試面試題
- PHPer、Laravel 面試可能會遇到的問題及答案PHPLaravel面試
- 2021年UI設計面試問題及答案解析UI面試
- 雲端計算面試題及答案,AWS雲端計算面試題面試題
- 2018年最新Java面試題及答案Java面試題
- 2019 Python最新面試題及答案16道題Python面試題
- 面試必備,Linux面試題和答案!Linux面試題
- SQL連續查詢問題擴充—記上海拼多多非技術崗面試真題SQL面試
- 30 個 Openstack 經典面試問題和解答面試
- 12個iOS技術面試題及答案總結iOS面試題
- 100道JAVA面試題+JAVA面試題參考答案Java面試題
- 雲端計算面試題及答案,常見的Shell指令碼面試題面試題指令碼
- 一個前端崗位電話面試所帶來的問題的思考前端面試
- 面試雲端計算崗位時這些面試題不能錯過面試題
- 求職面試常見問題:Python常見面試題全解析附答案求職Python面試題
- 優思學院:質量人33個面試問題及答案解析面試
- 技術乾貨:RabbitMQ面試題及答案MQ面試題