10514D030 第15題
SELECT *
FROM supplier_030
WHERE s_id IN(SELECT s FROM ordering_030 WHERE p > '32');
大夏公司和大東公司
04-08 16:23:
10514D006 劉乃心
-- 7. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address)
-- 請在答案紙上寫下結果
SELECT s_id, s_name, address
FROM supplier_006
WHERE s_id IN (SELECT s FROM ordering_006 WHERE p + '30');
04-08 16:26:
-- 1. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。
-- 請在答案紙上寫下前三筆的結果
SELECT s廠商, p, qty 訂購量
FROM ardering_037
LIMIT 3;
04-08 16:35:
-- 8. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總
-- 請在答案紙上寫下前三筆的結果
SELECT ordering_119.s, p, qty, cost, sum(qty*cost) AS total FROM ordering_119, product_119
WHERE ordering_119.p=product_119.p_id
GROUP BY ordering_119.s
ORDER BY Total
LIMIT 5;
04-08 16:59:
-- 12. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量
-- >> 在答案紙上寫下來即可
SELECT p, sum(qty) AS total FROM ordering_119 OO
GROUP BY OO.p
HAVING total > 900;
-- 7. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address)
-- 請在答案紙上寫下結果
SELECT s_id, s_name, address
FROM supplier_119
WHERE s_id IN (SELECT DISTINCT s FROM ordering_119 WHERE p = '30');
04-08 17:06:
-- 13. 出訂購總金額最多的一項商品
-- >> 寫下它的 商品編號、與品名
SELECT p, qty, cost, sum(qty*cost) AS total FROM ordering_119, product_119
WHERE ordering_119.p=product_119.p_id
GROUP BY ordering_119.P
ORDER BY Total DESC
LIMIT 1;
04-08 17:10:
-- 9. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。
-- 請在答案紙上寫下前三筆的結果
select *
from supplier_119
WHERE s_id NOT IN
(SELECT DISTINCT s FROM ordering_119);
04-08 17:16:
SELECT ordering_007.s, p, qty, cost, sum(qty*cost) AS total FROM ordering_007, product_007 WHERE ordering_007.p=product_007.p_id GROUP BY ordering_007.s ORDER BY Total LIMIT 5;
04-08 17:17:
--8 SELECT ordering_007.s, p, qty, cost, sum(qty*cost) AS total FROM ordering_007, product_007 WHERE ordering_007.p=product_007.p_id GROUP BY ordering_007.s ORDER BY Total LIMIT 5;
04-08 17:19:
-- 14. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的 公司編號 (s_id)
-- >> 寫下它的 公司編號 即可
SELECT DISTINCT s from ordering_119
where s NOT IN
(select s FROM ordering_119 WHERE p= '10');
04-08 17:20:
10514D007顏子翔 -- 8. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總
-- 請在答案紙上寫下前三筆的結果
-8 SELECT ordering_007.s, p, qty, cost, sum(qty*cost) AS total FROM ordering_007, product_007 WHERE ordering_007.p=product_007.p_id GROUP BY ordering_007.s ORDER BY Total LIMIT 5;
04-08 17:23:
9. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 select * from supplier_040 WHERE s_id NOT IN (SELECT DISTINCT s FROM ordering_040);
04-08 17:26:
-- 2. ordering_xxx 資料表中,各P (產品編號)之訂購量加總
-- 請在答案紙上寫下前三筆的結果
SELECT p, SUM(qty) AS total FROM ordering_119
GROUP BY p;
04-08 17:38:
10514W044張晏禎 -- 13. 出訂購總金額最多的一項商品
-- >> 寫下它的 商品編號、與品名
SELECT p, qty, cost, sum(qty*cost) AS total
FROM ordering_044, product_079
WHERE ordering_044.p=product_079.p_id
GROUP BY ordering_044.p ORDER BY Total DESC
LIMIT 1;
更新版
-- 10. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty),
-- 以及各項商品的訂購金額 (qty*cost)。
-- 請在答案紙上寫下前三筆的結果
SELECT s_id, address, p, name, cost, qty, total FROM supplier_079 SS JOIN
(SELECT s, p, name, cost, qty, (qty*cost) as total
FROM ordering_079 OO JOIN product_079 PP
ON OO.p = PP.p_id) WW
ON SS.s_id = WW.s;
04-08 17:56:
網站10514d044.epizy.com
04-08 17:56:
網站10514d044.epizy.com
04-09 13:04:
10514D030 林菀頤 第15題
SELECT *
FROM supplier_030
WHERE s_id IN(SELECT s FROM ordering_030 WHERE p > '32');
大夏公司和大東公司
04-09 14:46:
10514D001 徐御慈 第1題 SELECT S 廠商,P,qty 訂購量 FROM ordering_001 LIMIT 3
04-09 15:06:
10514D001 徐御慈 第1題 SELECT S 廠商,P,qty 訂購量 FROM ordering_001 LIMIT 3;
04-09 16:16:
10514D031黃明睿--16.將表格(Relation) product_xxx 中40號商品的價格改為199元 -- >> 請在答案紙上寫下您的SQL程式 UPDATE product_031 SET cost = '199' WHERE p_id ='40';
04-10 23:56:
以上登記完畢
04-14 22:21:
-- 15. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)> '32' 者、品名(name),價格 (cost),和數量(qty),
-- 以及各項商品的訂購金額 (qty*cost)。
-- >> 寫下它的 公司名稱 即可
CREATE VIEW temp AS
SELECT s, PP.p_id, PP.name, PP.cost, OO.qty, SUM(qty*PP.cost) AS total
FROM ordering_xxx OO JOIN product_xxx PP
ON OO.p = PP.p_id
GROUP BY OO.s, PP.p_id
HAVING PP.p_id > '32';
SELECT SS.s_id, SS.s_name, SS.address, temp.name, temp.cost, temp. qty, temp.total
FROM supplier_xxx SS JOIN temp
ON SS.s_id = temp.s;
04-14 22:34:
高堂祐04-08 17:53: 更新版 -- 10. is good.
04-14 22:36:
張晏禎04-08 17:38: 10514W044張晏禎 -- 13.
04-14 22:37:
林菀頤04-08 17:26: -- 2. is good.
04-14 22:37:
張晏禎04-08 17:38: 10514W044張晏禎 -- 13. is good.
04-14 22:38:
林育緯04-08 17:23: 9. is good.
04-14 22:40:
顏子翔04-08 17:20: 10514D007顏子翔 -- 8. is good.
04-14 22:45:
-- 13. 出訂購總金額最多的一項商品
-- >> 寫下它的 商品編號、與品名
SELECT p, name, sum(qty*cost) AS total
FROM ordering_xxx, product_xxx
WHERE ordering_xxx.p=product_xxx.p_id
GROUP BY ordering_xxx.p
ORDER BY total DESC LIMIT 1;
04-14 22:45:
林菀頤04-08 17:02: -- 7. is good.
04-14 22:46:
梁晉嘉04-08 17:02: 10514D079梁晉嘉 -- 16. is good.
04-14 22:53:
-- 3. 列出 廠商之訂購金額加總大於 80,000者。
-- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost
-- 請在答案紙上寫下前三筆的結果
SELECT s, SUM(qty*PP.cost) AS total
FROM ordering_xxx OO JOIN product_xxx PP
ON OO.p = PP.p_id
GROUP BY OO.s
HAVING total > 80000;
04-14 22:54:
高偉峻04-08 16:59: -- 12.
04-14 22:54:
高偉峻04-08 16:59: -- 12. is good.
04-15 00:57:
還沒繳交的同學,請盡快在此留言回覆。
04-15 00:59:
請每位同學按分配的題目繳交,在本頁面用「留言 回覆」的方式繳交。from 羅老師
04-15 13:02:
2. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) AS total FROM ordering_001 GROUP BY p;
7. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address) -- 請在答案紙上寫下結果 SELECT s_id, s_name, address FROM supplier_119 WHERE s_id IN (SELECT DISTINCT s FROM ordering_119 WHERE p = '30');
04-15 13:24:
3. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*PP.cost) AS total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p = PP.p_id GROUP BY OO.s HAVING total > 80000;
04-15 23:03:
徐御慈04-15 13:02: 2. is good.
04-15 23:04:
曾柏翔04-15 13:24: 7. is good.
04-15 23:05:
葉育誠04-15 13:24: 3. is good.
04-17 04:54:
15. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)> '32' 者、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- >> 寫下它的 公司名稱 即可 CREATE VIEW temp AS SELECT s, PP.p_id, PP.name, PP.cost, OO.qty, SUM(qty*PP.cost) AS total FROM ordering_078 OO JOIN product_078 PP ON OO.p = PP.p_id GROUP BY OO.s, PP.p_id HAVING PP.p_id > '32'; SELECT SS.s_id, SS.s_name, SS.address, temp.name, temp.cost, temp. qty, temp.total FROM supplier_078 SS JOIN temp ON SS.s_id = temp.s;
04-17 16:13:
-- 4. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列
-- 另存到一個資料表 temp_xxx
-- 請在答案紙上寫下 temp_xxx 前三筆的結果
CREATE TABLE temp_xxx AS
SELECT *
FROM ordering_xxx
WHERE p <= "12"
ORDER BY s DESC;
04-22 14:35:
-- 5. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。
-- 請在答案紙上寫下前三筆的結果
SELECT p_id, cost
FROM product_xxx
WHERE p_id NOT IN (
SELECT DISTINCT p
FROM ordering_xxx);