正在準備內容……

SQL 測驗

分組與聚合

複習行數與值計數、分組求和、HAVING、篩選後總額、去重計數及外層最大值。

說清每次聚合的輸入行與輸出粒度。

本節數六道給定SQLite 3.53.4任務的匹配結果,不是專業等級、百分位、僱主門檻或資格。任何正確數都能讀全部解析與四份完整指南。

五條票據行支援六個不同問題

設定含兩部門、五行票據和一個缺失數值,可分別問行數、非NULL值數、各部之和、哪個總額超過閾值及總額中的最大值。不能因都返回小數字就互換問題,先讀選擇表示式和輸入篩選再算。

空輸入求和不是數值零

新不計分例payments只有數值4,用WHERE v>9篩後選COUNT(*)、SUM(v),返回一行0|NULL:數到零條保留行,SUM無非NULL值可加,返NULL,並非取消聚合結果行。另加COALESCE是題中未做的不同選擇。

有意區分行、值與去重部門計數

COUNT(*)數輸入行,含數值NULL行;COUNT(value)忽略該缺失值;COUNT(DISTINCT dept)數兩個不同部門字串。它們單位不同,即使換資料偶然相同也不能互換。結果旁寫單位;本表部門無NULL,不引入額外情形。

WHERE先篩行,HAVING再核組

篩選求和題先只留合格數值行再SUM;HAVING題則先分給定行,再核組總額是否嚴格過線。相似數字條件換位置會改變問題。依次核保留行、組與總額,區分大於10和大於等於10。

分清內部總額與外部最大值

巢狀查詢先每部門生成一個總額並命名total,外部MAX比這些總額,不比單票值。給定資料最大單票與最大部門總額不同,宜先畫中間兩行再讀外部SELECT。小整數避開溢位及浮點問題,不建立任意生產財務計算的精度結論。

先改組成員,再改公式

在可丟棄記憶體表用虛構標籤和少量整數,預測COUNT(*)與COUNT(value)後添一條NULL再預測;接著只改一個組成員,比較其和與全部組和的最大值。執行前寫中間結果。網站不需表格上傳或私庫連線,建議練習用可隨時丟棄的合成輸入。

把正確數作為複習線索

六個匹配答案可引導複習,但總數不能說明是否給陌生報表選對粒度、完成對賬或設計高效查詢。任何正確數均給全部題解與四份全文;結果按SQLite 3.53.4核過,無百分位、專業檔、僱主門檻或證書,讀答案重測固定題組可獎勵記憶。

回顧:同一個閾值在篩行與篩組時不同

新例tickets(dept TEXT,v INTEGER)含(Elm,4)、(Elm,6)、(Pine,9)。SELECT dept,SUM(v) FROM tickets GROUP BY dept HAVING SUM(v)>8 ORDER BY dept;返回Elm|10; Pine|9。改為WHERE v>8後再GROUP BY dept,只剩Pine|9:Elm兩行各自都未過8,但合計10可使原HAVING成立。先列篩行後的輸入,再列各組總額,不把兩條查詢當作等價最佳化。原表未改變,變化來自語句表達的請求。兩條已在SQLite 3.53.4記憶體庫核對,不計分。

先說明查詢要回答什麼,再一起核結果

可以問:“沒有一條Elm單行超過8,為什麼Elm組仍能通過HAVING?移動條件時改變了輸入還是隻改變顯示?”先各自畫小表與中間結果,再比較第一個分歧。可只讀、不執行、查SQLite文件或換資料,無需連線真實資料庫、披露報表或參加速度排名;討論明確的資料和條件,允許指出題外問題尚未被評估。

分享按鈕只複製公開練習入口,不帶個人答案或正確數;也可自行傳送這份公開指南。四組是複習主題,不是資料庫專業等級、招聘通過線或廠商認證。實際執行支援給定SQLite版本下這些語句的結果,不證明所有SQL方言相同、真實報表正確或題組心理測量質量。

開始免費練習

分項複習指南

  • 篩選與NULL

    複習數值和區域篩選、IS NULL、NULL等號比較、包含兩端的BETWEEN及COALESCE後備值。

  • 聯接與匹配

    複習內外聯接、ON與WHERE、補NULL行、卡id計數及相關NOT EXISTS。

  • 視窗與約束

    複習ROW_NUMBER、排名並列、累計總額、篩選CTE及兩種明確的INSERT約束失敗。

統計匹配結果,不派開發者檔位

匹配答案計一道正確,其他有效選擇計零;每組六題,合計/24。全部有效選擇前不顯示個人正確數,無時間權重、部分分或默補缺答。4/6只是所給任務四個匹配結果,無百分位、招聘通過分或資格。

保留完整設定與逐題解釋

結果保留每段原創設定、最後語句、所選、答案及解析,零分、部分答對、全對均給四份全文。行列分隔只是顯示約定,不是額外返回值。核錯題要追蹤實際輸入及子句;公開指南給完整複習內容,不給個人成績。

宣告SQLite環境與有限輸入

每題用獨立全新SQLite 3.53.4記憶體庫和虛構輸入核驗,不是生產資料庫。方言、設定、約束、併發行為可不同,題組不建立跨引擎相同行為,也不評查詢調優、管理或真實報表。無計時,約十二分鐘是編輯估計,重測重複固定題組。

原創資料、查詢與解析

費馬編寫表資料、問題、干擾項、解析及指南,連結文件支援選定規則,不搬其例子或專有招聘題。本獨立練習無廠商背書或認證。程式碼按轉義文本顯示,選擇在本地核對,不執行訪問者查詢或發給所連資料庫。