.NET高階工程師面試題之SQL篇

發表於2015-05-14

1 題目

這確實是一個真實的面試題,琢磨一下吧!知識不用,就會丟掉,我太依賴各種框架和dll了,已經忘記了最基本的東西。有多久沒有寫過SQL了,我已經不記得了。

已知表資訊如下:

Department(depID, depName),depID 系編號,DepName系名

Student(stuID, name, depID) 學生編號,姓名,系編號

Score(stuID, category, score) 學生編碼,科目,成績

找出每一個系的最高分,並且按系編號,學生編號升序排列,要求順序輸出以下資訊:

系編號,系名,學生編號,姓名,總分

2 實驗

3 結果

  面試的時候,沒有寫出來,當時腦袋昏沉沉的。也確實好久沒有寫複雜的sql語句了。今天花了2到3個小時,終於試出來了。不知道有沒有更好的寫法?

4 補充

看了那麼多的評論,自己寫的真的不咋樣,可惜今天沒有時間細細看了,現在還在公司加班!但百度一下的時間還是有滴,So整理一下相關資料先。

(1)、SQL2005四個排名函式(row_number、rank、dense_rank和ntile)的比較

(2)、關於with as:使用WITH AS提高效能簡化巢狀SQL

 5 參考SQL

  正確的答案的結果是一樣的,錯誤的各有各的不同,正確的答案後的效能也各有各的不同,不過呢,暫時沒有水平去分析它,但是有空會把這些全部看一遍.謝謝各位啦!【2015-05-13 23:44】

相關文章