【收藏】SQL經典面試50題 | 附答案

今天給大家分享一份星友對SQL經典面試50題的刷題記錄,稍作了一些修改,以下是星友自述正文:

看完了SQL基礎教程,然後再看SQL進階教程感覺有些不是很懂,於是就開始刷題熟悉⼀下基礎知 識,找了⽐較經典的很多⼈都刷過的SQL⾯試50題,B站也有挺好的視頻解答,看題先⾃⼰做,不會就看視頻解答,感覺難題都在前⾯。

剛開始基本是邊看邊做,慢慢後⾯簡單了,基本能⾃⼰先做了再看,斷斷續續終於刷完了全部題⽬,重新梳理⼀遍看看知識點,分享⼀下刷題的代碼,視頻基本講解很清楚了,我就簡單寫下思路知識。(本文只列舉部分問題,完整版可見星球或以下鏈接)

題⽬知乎鏈接:  

https://zhuanlan.zhihu.com/p/38354000 

https://zhuanlan.zhihu.com/p/43289968

B站學習視頻:

https://www.bilibili.com/video/BV1q4411G7Lw/?p=4  

視頻B站鏈接:

https://www.bilibili.com/video/BV1q4411G7Lw?p=1

數據表介紹

學生表: 

Student(s_id,s_name,s_birth,s_sex) 

學生編號,學生姓名, 出生年月,學生性別

課程表:

Course(c_id,c_name,t_id) 

課程編號, 課程名稱, 教師編號

教師表:

Teacher(t_id,t_name)

教師編號,教師姓名

成績表:

Score(s_id,c_id,s_s_score) 

學生編號,課程編號,分數

1、查詢課程編號爲“01”的課程比“02”的課程成績高的所有學生的學號(重點)

2、查詢平均成績大於60分的學生的學號和平均成績(簡單,第二道重點)

2.1、所有成績小於60分的學生信息

2.2、查詢平均成績小於60分的學生的學號和平均成績,考慮沒參加考試的情況

5、查詢沒學過“張三”老師課的學生的學號、姓名(重點)

6、查詢學過“張三”老師所教的所有課的同學的學號、姓名(重點)

7、查詢學過編號爲“01”的課程並且也學過編號爲“02”的課程的學生的學號、姓名(重點)

7.1、查詢學過編號爲“01”的課程但沒有學過編號爲“02”的課程的學生的學號、姓名(重點)

10、查詢沒有學全所有課的學生的學號、姓名(重點)

11、查詢至少有一門課與學號爲“01”的學生所學課程相同的學生的學號和姓名(重點)

12、查詢和“01”號同學所學課程完全相同的其他同學的學號(重點)

13、查詢沒學過"張三"老師講授的任一門課程的學生姓名 和47題一樣(重點,能做出來)

15、查詢兩門及其以上不及格課程的同學的學號,姓名及其平均成績(重點)

17、按平均成績從高到低顯示所有學生的所有課程的成績以及平均成績(重重點與35一樣)

18、查詢各科成績最高分、最低分和平均分:以如下形式顯示:課程ID,課程name,最高分,最低分,平均分,及格率,中等率,優良率,優秀率(及格爲>=60,中等爲:70-80,優良爲:80-90,優秀爲:>=90) (超級重點)

22、查詢所有課程的成績第2名到第3名的學生信息及該課程成績(重要 25類似)

24、查詢學生平均成績及其名次(同19題,重點)

25、查詢各科成績前三名的記錄(不考慮成績並列情況)(重點 與22題類似)

35、查詢所有學生的課程及分數情況(重點)

36、查詢任何一門課程成績在70分以上的姓名、課程名稱和分數(重點) 注:不用group by

40、查詢選修“張三”老師所授課程的學生中成績最高的學生姓名及其成績(重要top)(成績最高學生可能有n個,應該用嵌套查到最高成績再查成績等於最高成績的學生信息)

41.查詢不同課程成績相同的學生的學生編號、課程編號、學生成績 (重點)

46、查詢各學生的年齡(精確到月份)

47、查詢沒學過“張三”老師講授的任一門課程的學生姓名

熱門文章

直戳淚點!數據從業者權威嘲諷指南!

數據分析師做成了提數工程師,該如何破局?

全棧型VS專精型,團隊到底需要什麼樣的人?

數據驅動業務,比技術更重要的是思維的轉變

最近面了十多個數據分析師,聊一聊我發現的一些問題

【您的在看,我的莫大鼓勵】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章