常見的SQL筆試題和面試題(上):經典50題
- SQL語言允許使用通配符進行字元串比對的操作,其中‘%’可以表示:
A.零個字元
B.1個字元
C.多個字元
D.以上都是
- 通過 SQL,如何從 "Persons" 表中選取 "FirstName" 列?
A、SELECT Persons.FirstName
B、SELECT FirstName FROM Persons
C、EXTRACT FirstName FROM Persons
- 通過 SQL,如何從 "Persons" 表中選取所有的列?
A、SELECT [all] FROM Persons
B、SELECT Persons
C、SELECT * FROM Persons
D、SELECT *.Persons
- 通過 SQL,如何從 "Persons" 表中選取 "FirstName" 列的值等于"Peter" 的所有記錄?
A、SELECT [all] FROM Persons WHERE FirstName='Peter'
B、SELECT * FROM Persons WHERE FirstName LIKE 'Peter'
C、SELECT [all] FROM Persons WHERE FirstName LIKE 'Peter'
D、SELECT * FROM Persons WHERE FirstName='Peter'
- 通過 SQL,如何從 "Persons" 表中選取 "FirstName" 列的值以 "a" 開頭的所有記錄?
A、SELECT * FROM Persons WHERE FirstName LIKE 'a%'
B、SELECT * FROM Persons WHERE FirstName='a'
C、SELECT * FROM Persons WHERE FirstName LIKE '%a'
D、SELECT * FROM Persons WHERE FirstName='%a%'
- 請判斷下列說法是否正确:當所列出的某個條件為 true 時,OR 運算符會顯示記錄。當列出的所有條件為 true 時,AND 運算符會顯示記錄。
A、正确
B、錯誤
- 通過 SQL,您如何在表 Persons 中選擇 FirstName 等于 Thomas 而 LastName 等于 Carter 的所有記錄?
A、SELECT * FROM Persons WHERE FirstName LIKE 'Thomas' AND LastName LIKE 'Carter'
B、SELECT FirstName='Thomas', LastName='Carter' FROM Persons
C、SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'
答案:C
- 通過 SQL,您如何按字母順序選取 Persons 表中 LastName 介于 Adams 和 Carter 的所有記錄?
A、SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter'
B、SELECT * FROM Persons WHERE LastName>'Adams' AND LastName<'Carter'
C、SELECT LastName>'Adams' AND LastName<'Carter' FROM Persons
- 哪條 SQL 語句可傳回唯一不同的值?
A、SELECT DIFFERENT
B、SELECT DISTINCT
C、SELECT UNIQUE
- 哪個 SQL 關鍵詞用于對結果集進行排序?
A、ORDER
B、SORT BY
C、SORT
D、ORDER BY
- 通過 SQL,您如何根據 "FirstName" 列降序地從 "Persons" 表傳回所有記錄?
A、SELECT * FROM Persons SORT 'FirstName' DESC
B、SELECT * FROM Persons ORDER BY FirstName DESC
C、SELECT * FROM Persons ORDER FirstName DESC
D、SELECT * FROM Persons SORT BY 'FirstName' DESC
- 通過 SQL,您如何在 "Persons" 表中删除 "FirstName" 等于 "Fred" 的紀錄?
A、DELETE FROM Persons WHERE FirstName = 'Fred'
B、DELETE FirstName='Fred' FROM Persons
C、DELETE ROW FirstName='Fred' FROM Persons
- 通過 SQL,如何傳回 "Persons" 表中記錄的數目?
A、SELECT COLUMNS() FROM Persons
B、SELECT COLUMNS(*) FROM Persons
C、SELECT COUNT() FROM Persons
D、SELECT COUNT(*) FROM Persons
- 視圖和表有什麼差別?
- 如果有兩張表employees和departments如下:
(1)寫出SQL得出每個部門的平均工資。
(2)查詢量表得出如下結果:
- 如有有一張表player,有id、name兩個列,我想知道這張表有多少行資料,id最大的前10位的name是什麼,請問這兩個SQL語句如何寫?
- 查詢一張資料表(tb),基本字段:日期,訂單
要求用SQL實作:
周次(week),訂單總和,日均訂單,極大值訂單,極小值訂單
- 使用SQL實作以下資料表及總分,平均分(資料表:table)
- 表group有四個字段,表結構如下:
create table group(
id bigint comment '群号',
name string comment '群名',
class string comment '群類别',
num int comment '群成員數量'
);
資料如下:
1 一起打球 籃球 10
2 來玩球吧 籃球 15
3 濱江一霸 籃球 5
4 足球小将 足球 20
5 絕代雙驕 足球 30
6 玩個球啊 乒乓 19
...
PK為id
1、求群數量少于1000的群類别
- 區間劃分問題,使用case語句
如果上面的題目不會,建議按下面的内容進行學習或者複習:
如何學習 SQL 語言?www.zhihu.com