正在準備內容……

SQL 測驗

聯接與匹配

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

先數匹配行對,再讀報表。

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

一個隊伍可以匹配多張卡

輸入有三隊四卡:一隊匹配兩張、一隊一張、最後無卡,另有隊id為NULL的卡。這些明確倍數決定答案。內聯接數匹配行對,左聯接可為無匹配隊補NULL行;先畫實際行對,再加篩選或分組。

右側IS NULL條件可以保留未匹配行

新不計分例左id為1、2,右表主鍵91行匹配左1;左聯接後WHERE r.rid IS NULL,只留左2。它就是有意保留未匹配行的右側WHERE條件,因此“任何此類條件都使左聯接像內聯接”的規則過寬。

區分隊伍與聯接行對

一隊兩卡合理地產生兩條聯接行,並不自動是該用DISTINCT修的錯,正確粒度由問題決定。本題有的問聯接行數,有的問每隊一條分組數。左聯接保留未匹配左行,不保留所有未匹配右行;給定等號下NULL隊id卡不參與匹配。

比較兩條完整條件

WHERE中的分數比較在補NULL行上不為真,因此排它;同一比較放ON則先改變卡匹配,再補無匹配隊,數量隨之不同。脫離報表需求,兩位置誰都非永遠正確;先說應保留哪些隊、哪些卡合格,再決定位置。

數真實卡id或測試是否有匹配行

COUNT(c.cid)忽略補行NULL卡id,所以無卡隊雖有一條聯接行,分組卡數仍為零。NOT EXISTS問相關匹配查詢是否有行,不數有卡隊共有幾卡。二者分開,核分組數時別把非NULL卡id換成無關可空列。

先添一個匹配,再改查詢

在可丟棄記憶體例用虛構id,預測內、左聯接後,只為一個左id添一條右匹配,先數新行對再聚合。然後比較排NULL的WHERE、ON與IS NULL,並在結果旁寫目標粒度。網站只顯示所給SQL文本,不需生產表或客戶記錄。

正確數不建立報表工作能力

六個匹配結果可提示覆習主題,但不建立大型聯接正確、報表對賬或生產查詢高效的結論。讀解析後換新資料;題組固定,按宣告SQLite環境核驗,無校準開發者檔、招聘線或資格,任何正確數都可看全文。

回顧:可空業務欄位不能單獨證明未匹配

新例左表l(id INTEGER PRIMARY KEY)含1、2;右表r(rid INTEGER PRIMARY KEY,lid INTEGER,score INTEGER)僅含(81,1,NULL)。按r.lid=l.id左聯接,WHERE r.score IS NULL會同時保留左1與左2:前者有真實匹配但score缺失,後者是補NULL行。把條件改為r.rid IS NULL才只保留左2,因為真實匹配行的rid是非NULL主鍵。先標真實行對再標補行,別把“某業務值缺失”直接當“沒有匹配”。兩條查詢已在SQLite 3.53.4記憶體庫核對,是不計分新例。

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

可以問:“左1明明有匹配,為什麼仍通過score IS NULL?換成rid測試依據什麼宣告,若換回可空列還成立嗎?”先各自畫小表與中間結果,再比較第一個分歧。可只讀、不執行、查SQLite文件或換資料,無需連線真實資料庫、披露報表或參加速度排名;討論明確的資料和條件,允許指出題外問題尚未被評估。

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

開始免費練習

分項複習指南

  • 篩選與NULL

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

  • 分組與聚合

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

  • 視窗與約束

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

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

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

保留完整設定與逐題解釋

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

宣告SQLite環境與有限輸入

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

原創資料、查詢與解析

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