今天接受面試,面試公司出了這樣一道題
假設只有乙個table,名為pages,有四個字段,id, url,title,body。裡面儲存了很多網頁,網頁的url位址,title和網頁的內容,然後你用乙個sql查詢將url匹配的排在最前,title匹配的其次,body匹配最後,沒有任何字段匹配的,不返回。
就是上面這道面試題,讓我想了乙個下午,在網上找資料,最後用下面方法實現
但我感覺這種方法並不是最簡單的,後來把這個方法發給面試的人,他給我了一種更簡單方法,只要用基本的sql語句就可以實現。**如下
用union 實現聯合查詢,在每個查詢語句中定義乙個臨時變數mark 並給mark賦值,在最後的輸出時採用mark來排序,這樣實現真的好簡單。其實這都考驗我們對sql的編成思想。
把上面的**拿出來和大家分享,如果大家還有其他的方法也發上來。
一道sql 的面試題
表結構 成績表 grade 包含字段 gradeid int,自增 sno int,學號 cno int,課程號 score float,分數 查詢每門課程的平均 最高 最低 分及課程號 select g score cno from dbtest dbo grade group by cno se...
一道sql面試題的解答
題目 寫出一條sql語句 取出表a中第31到第40記錄 sqlserver,以自動增長的id作為主鍵,注意 id可能不是連續的。解答 已測試 1 假設id是連續的 select top10 fromawhereidnot in selecttop30 idfroma 或select fromawhe...
一道sql面試題的解答
題目 寫出一條sql語句 取出表a中第31到第40記錄 sqlserver,以自動增長的id作為主鍵,注意 id可能不是連續的。解答 已測試 1 假設id是連續的 select top10 fromawhereidnot in selecttop30 idfroma 或select fromawhe...