題組內容

一、某公司的關聯式資料庫包含下列表格,有底線者為主鍵:(22 分)
 貨品(貨號,品名,單價,庫存數量,供應商編號,供應商名稱) 
供應商(供應商編號,供應商名稱,供應商地址,供應商電話,聯絡人)
 (一)請用 SQL 列出下列查詢:(14 分)

(3)至少供應 2 種貨品之供應商名稱,及該供應商販售幾種貨品。(7 分)

申論題作答 (共 7 筆)

依時間顯示最近 7 筆。
willislin
willislin
申論題作答 #110439
98 分
98 總分
題意符合度
100分
論證結構
95分
語言表達
100分
49秒 總時間 0 人解鎖 2026.10
SELECT 供應商名稱,COUNT(貨號) FROM 貨品 GROUP BY 供應商編號 ,供應商名稱...
解鎖 28 字
willislin
willislin
申論題作答 #110396
46 分
46 總分
題意符合度
45分
論證結構
35分
語言表達
70分
3分22秒 總時間 0 人解鎖 2026.10
SELECT 供應商名稱,SUM(貨號) FROM 貨品 GROUP BY 供應商編號 HAVING SUM(貨...
解鎖 23 字
SeaMan
SeaMan
申論題作答 #109470
86 分
86 總分
題意符合度
88分
論證結構
82分
語言表達
90分
1分42秒 總時間 1 人解鎖 2026.10
SELECT A.供應商名稱,COUNT(B.貨號) AS totalFROM 供應商 AS AJOIN 貨品 B ON...
解鎖 58 字 1 人已解鎖
Kiwi Tsai
Kiwi Tsai
申論題作答 #109363
62 分
62 總分
題意符合度
75分
論證結構
50分
語言表達
60分
7分33秒 總時間 0 人解鎖 2026.10
SELECT p.供應商名稱, COUNT(p,貨號) AS 販售貨品 FROM 貨品 p GROUP BY p.供...
解鎖 33 字
毛毛
毛毛
申論題作答 #108663
95 分
95 總分
題意符合度
95分
論證結構
95分
語言表達
95分
5分0秒 總時間 2 人解鎖 2026.10
SELECT 供.供應商名稱,COUNT(貨.貨號) AS 貨品種類 FROM 供應商 AS 供,貨品 A...
解鎖 58 字 2 人已解鎖
Bo Jun
Bo Jun
申論題作答 #106235
80 分
80 總分
題意符合度
85分
論證結構
78分
語言表達
72分
9秒 總時間 3 人解鎖 2026.09
select 供應商名稱,count(貨號) AS 販賣幾種商品from 貨品gorup by 供應商名...
解鎖 36 字 3 人已解鎖
藍環章魚
藍環章魚
申論題作答 #105548
76 分
76 總分
題意符合度
75分
論證結構
70分
語言表達
85分
2分12秒 總時間 3 人解鎖 2026.09
SELECT 供應商名稱, COUNT(貨號) AS 販售幾種商品FROM 貨品GROUP BY 供應商編...
解鎖 31 字 3 人已解鎖

詳解 (共 10 筆)

Mihaeru
Mihaeru
詳解 #5191390
2021/11/03

SELECT 供應商名稱, COUNT(DISTINCT(貨號)) AS 販售幾種商品

FROM 貨品

GROUP BY 供應商編號

HAVING COUNT(DISTINCT(貨號)) >1 ;

=========================================

COUNT 要不要另外命名無所謂,題目沒特別講明看得懂就好。
這題不用 JOIN 供應商 table 因為要的資料貨品 table 裡都有。
題目要求篩選出至少供應兩項貨品的供應商名稱,所以要先用 GROUP BY 將供應商進行分群,使用供應商編號是因為具有唯一性。
聚合函數如果要設條件則需要使用HAVING,不能用WHERE。
COUNT()的意義為計算符合條件的資料筆數,DISTINCT()的意義為篩選出該欄位不同的值有哪幾個
故COUNT(DISTINCT(貨號))會先將所有的貨號種類列出,在計算總共有幾種貨號,最後使用 >1 篩選出有兩個以上的,你也可以用>=2,意思一樣。

補:後來發現貨號是primary key,所以不用DISTINCT沒關係,本身就具有唯一性,直接COUNT(貨號)就好,或是COUNT(*)也行。
另外我會使用GROUP BY 供應商編號 的原因是為了避免有供應商名稱重複的狀況,畢竟primary key只有供應商編號,假設有兩家供應商的名稱真的一樣,那GROUP BY 供應商名稱 就會把他們算在一起了。

R
R
詳解 #4337644
2020/10/25
SELECT 供應商名稱, COUNT(...
(共 84 字,隱藏中)
前往觀看
111考生
111考生
詳解 #5626663
2022/10/05
SELECT 供應商名稱, COUNT(貨號) AS 賣幾種商品
FROM 貨品
GROUP BY 貨品.供應商編號
HAVING COUNT(貨號)>=2
aabb177
aabb177
詳解 #4169513
2020/07/24
SELECT 供應商名稱 ,COUNT(...
(共 77 字,隱藏中)
前往觀看
Lin Jin
Lin Jin
詳解 #6192957
2024/08/15
SELECT 供應商名稱, COUNT(...
(共 134 字,隱藏中)
前往觀看
目標國營聯招
目標國營聯招
詳解 #5112202
2021/09/25
覺得用貨號比較好 品名有可能一樣
(共 18 字,隱藏中)
前往觀看
MAYTHEFORCEBEWITHYOU
MAYTHEFORCEBEWITHYOU
詳解 #3814050
2020/03/07
SELECT 供應商名稱 ,COUNT(...
(共 79 字,隱藏中)
前往觀看
shang
shang
詳解 #6209817
2024/09/14
SELECT 供應商名稱,COUNT(貨...
(共 75 字,隱藏中)
前往觀看
Jian Ting Liu
Jian Ting Liu
詳解 #5191495
2021/11/03

SELECT 供應商名稱, COUNT(品名) AS “供應商販售幾種貨品”

FROM 貨品

GROUP BY 供應商名稱

HAVING COUNT(品名)≥2;

我還有明天
我還有明天
詳解 #5173253
2021/10/24

SELECT 供應商名稱 ,COUNT(DISTINCT品名) AS 兩種以上貨品供應商

FROM 貨品

WHERE 兩種以上貨品供應商>= 2