阿摩線上測驗 登入

申論題資訊

試卷:110年 - 110 一般警察特種考試_二等_刑事警察人員數位鑑識組:資料庫管理與應用#101695
科目:資料庫管理與運用
年份:110年
排序:0

題組內容

二、下面一個資料庫三個表格,分別代表賽車手(Racer)資料之編號(RID)、姓名(Name)、手機(CellPhone)、評等(Rating)(資料值為 1-10 間整數,越大越好)、年齡(Age)。跑車(Sports_Car)資料之賽車編號(SNum)、牌照號碼(License_Num)、引擎號碼(Engine_Num)、可開的最高速度(Max_Speed) 、顏色(Color) (資料值如 red, green, yellow 等各種顏色)。 駕駛(Drive)資料之某賽車手編號(RID)於某天(Date)(格式為 YYYY-MM-DD)開某跑車編號(SNum)。
Racer (RID, Name, CellPhone, Rating, Age)
 Sports_Car (SNum, License_Num, Engine_Num, Max_Speed, Color)
 Drive (RID, SNum, Date)
請以 SQL 語言,寫出下面查詢:

申論題內容

(二)在 2021-06-17 當天開各種顏色跑車的賽車手人數。(8 分)

詳解 (共 1 筆)

詳解 提供者:hchungw
要查詢在2021-06-17當天開各種顏色跑車的賽車手人數,可以使用以下SQL語句。這個查詢會返回在該日期開過不同顏色跑車的賽車手人數,按照顏色進行分組。
sql
複製程式碼
SELECT SC.Color, COUNT(DISTINCT D.RID) AS NumberOfRacers
FROM Drive D
JOIN Sports_Car SC ON D.SNum = SC.SNum
WHERE D.Date = '2021-06-17'
GROUP BY SC.Color;
查詢解釋
選取所需的列:
sql
複製程式碼
SELECT SC.Color, COUNT(DISTINCT D.RID) AS NumberOfRacers
SC.Color:跑車的顏色。
COUNT(DISTINCT D.RID) AS NumberOfRacers:計算在2021-06-17當天開過該顏色跑車的不同賽車手的數量。
連接表格:
sql
複製程式碼
FROM Drive D
JOIN Sports_Car SC ON D.SNum = SC.SNum
Drive 表和 Sports_Car 表通過 SNum 連接,從而獲得賽車手開的跑車的顏色信息。
指定日期條件:
sql
複製程式碼
WHERE D.Date = '2021-06-17'
限制查詢範圍僅在2021-06-17當天。
分組:
sql
複製程式碼
GROUP BY SC.Color;
按跑車顏色分組,以便計算每種顏色跑車的賽車手人數。
這樣,最終結果會返回在2021-06-17當天開過不同顏色跑車的賽車手人數,並按顏色進行分組。