羅德興老師的教學歷程檔案 - 107-2 資料庫管理系統 - 期中考練習與時間
 

企業資訊與管理系
助理教授/日導
羅德興


歷程檔案 Portfolio

    期中考練習與時間

    期中考定於 108.04.20(周六) 10-11 節 (15:50-17:25) 舉行
    複習共有 Part 1-2.

    Part 2 1-10 題 請每位同學
    在本頁面用「留言   回覆」的方式繳交。
    分配方式為:學號末碼為單數者請做單數題,末碼為偶數者請做偶數題。


    -- 期中考試題複習 Part 1  (40%)
    -- 一、
    -- 以下代碼 _xxx 表示 -您的學號後三碼
    -- 請建立一個 資料庫 test_xxx,完成後請  
    -- (1) 在答案紙上寫下三個表格的欄位 (並標出關鍵值),與表格之間的關係 
    -- (2) 展示給老師評分
    -- 有三個表格 (tables) 如下,請寫出SQL解決下列問題 1-10:

     

    supplier (s_id, s_name, address)
    廠商 (廠商編號,廠商名稱,地址)

    product (p_id, name, cost)

    商品 (商品編號,商品名稱,單價)

    ordering (s, p, qty)

    訂購單  (廠商編號,商品編號,訂購數量)

     

      

     
    DROP DATABASE IF EXISTS test_xxx;  -- 刪除資料庫
    CREATE DATABASE `test_xxx` CHARACTER SET utf8; -- 建立資料庫 採 utf8 編碼
    -- 新增 table
     
    USE test_xxx;
    -- 利用 AUTO_INCREMENT 自動累加,給該筆記錄一個獨一無二的編號,
    -- 像是給它一個ID,或是一個Index等等,自動從一開始設定的值 (預設是1) 一直累加上去。 
     
    CREATE TABLE supplier_xxx (
        s_id int NOT NULL AUTO_INCREMENT,
        s_name char(100),
        address char(120) NOT NULL,
        PRIMARY KEY (s_id)
    ) CHARACTER SET=utf8, ENGINE=INNODB; 
     
    CREATE TABLE product_xxx (
        p_id char(10) NOT NULL,
        name char(50),
        cost int NOT NULL,
        PRIMARY KEY (p_id)
    ) CHARACTER SET=utf8, ENGINE=INNODB; 
     
    CREATE TABLE ordering_xxx (
        s int NOT NULL,
        p char(10) NOT NULL,
        qty int,
        PRIMARY KEY (s,p),
     
       CONSTRAINT sp_fk2
            FOREIGN KEY (s) REFERENCES supplier_xxx(s_id)
            ON DELETE NO ACTION
            ON UPDATE CASCADE,
     
       CONSTRAINT sp_fk3
            FOREIGN KEY (p) REFERENCES product_xxx(p_id)
            ON DELETE NO ACTION
            ON UPDATE CASCADE
     
     ) CHARACTER SET=utf8, ENGINE=INNODB; 
    -- type=innodb 相當於 engine=innodb
    -- 新增 table 內的資料
     
    INSERT INTO supplier_xxx
    (s_name, address) VALUES 
    ('大華公司', '台北'),
    ('中華公司', '新北市'),
    ('小華公司', '花蓮'),
    ('大同公司', '高雄'),
    ('大夏公司', '台南'),
    ('大東公司', '台中'),
    ('中西公司', '宜蘭');
     
    INSERT INTO product_xxx
    (p_id, name, cost) VALUES 
    ('10', '蘋果', 110),
    ('11', '青蘋果', 20),
    ('12', '檸檬', 10),
    ('13', '芭樂', 150),
    ('20', '番茄', 165),
    ('21', '香蕉', 140),
    ('23', '蓮霧', 250),
    ('24', '橘子', 100),
    ('30', '奇異果', 290),
    ('31', '梨子', 510),
    ('32', '富士蘋果', 410),
    ('33', '小蘋果', 105),
    ('34', '柳丁', 115),
    ('40', '西瓜', 290);
     
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('1', '10', 50);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('1', '11', 150);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('1', '12', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('2', '10', 450);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('2', '11', 50);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('2', '13', 550);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('2', '12', 650);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('7', '20', 150);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('7', '21', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('7', '23', 550);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('7', '30', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '31', 120);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '32', 50);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '33', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '10', 450);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '11', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '12', 150);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('5', '20', 50);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('6', '30', 10);
    INSERT INTO ordering_xxx (s, p, qty) VALUES('6', '31', 750);
    INSERT INTO ordering_xxx (s, p, qty) VALUES ('6', '32', 250);
    INSERT INTO ordering_xxx (s, p, qty) VALUES('6', '33', 505);
    INSERT INTO ordering_xxx (s, p, qty) VALUES('6', '20', 20);


    -- 期中考試題複習  Part 2 (60%)
    -- 以下代碼 _xxx 表示 -您的學號後三碼
    -- 二、請依序回答各題,或寫出各題的 SQL 程式並執行
    -- 1 - 10 題為必答題,每題 6 分,其餘為參考題。
     
    -- 1.      列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄
    -- 請在答案紙上寫下結果

    -- 2.      列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列
    -- 請在答案紙上寫下結果

    -- 3.      列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列
    -- 請在答案紙上寫下結果
     
    -- 4.      列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p)  是 "20" 的所有紀錄
    -- 請在答案紙上寫下結果

    -- 5.      列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p)  是 "20" 的所有紀錄的訂購數量 (qty)加總
    -- 請在答案紙上寫下結果

    -- 6.      查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列
    -- 請在答案紙上寫下結果
     
    -- 7.      列出 ordering_xxx 資料表(Relation)中訂購數量 (qty)大於 500  的所有紀錄,按商品編號 (p) 由小到大排列
    -- 請在答案紙上寫下結果

    -- 8.      列出 ordering_xxx 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列
    -- 請在答案紙上寫下結果

    -- 9.      將  supplier_xxx 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address)  更新  為 "台北市南港區研究院路1段234號"。
    -- 請在答案紙上寫下您的 SQL 程式
     
    -- 10.    將  ordering_xxx 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除
    -- 請在答案紙上寫下您的 SQL 程式
     

    -- 以下題目為期中考後進度,供參考。

    -- 11.      列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。
    -- 請在答案紙上寫下前三筆的結果
     
    -- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總
    -- 請在答案紙上寫下前三筆的結果
     
    -- 13. 列出 廠商之訂購金額加總大於 80,000者。
    -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost
    -- 請在答案紙上寫下前三筆的結果
     
    -- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列
    -- 另存到一個資料表 temp_xxx
    -- 請在答案紙上寫下 temp_xxx 前三筆的結果
     
    -- 15. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。
    -- 請在答案紙上寫下前三筆的結果
     
    -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。                                                   ]
     
    SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx
    WHERE ordering_xxx.p=product_xxx.p_id
    GROUP BY ordering_xxx.s
    ORDER BY Total DESC;

     
    -- 17. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address)
    -- 請在答案紙上寫下結果
     
    -- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總
    -- 請在答案紙上寫下前三筆的結果
     
    -- 19.  列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。
    -- 請在答案紙上寫下前三筆的結果
     
    -- 20.  列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty),
    -- 以及各項商品的訂購金額 (qty*cost)。
    -- 請在答案紙上寫下前三筆的結果
     
    -- 21. 列出 廠商之訂購金額加總 (訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost) 小於 250,000者。
    -- >> 寫下 其中最多的一家廠商、與其訂購金額加總
     
    -- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量
    -- >> 在答案紙上寫下來即可
     
    -- 23. 出訂購總金額最多的一項商品
    -- >> 寫下它的 商品編號、與品名
     
    -- 24. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的  公司編號 (s_id)
    -- >> 寫下它的 公司編號  即可
     
    -- 25. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)> '32' 者、品名(name),價格 (cost),和數量(qty),
    -- 以及各項商品的訂購金額 (qty*cost)。
    -- >> 寫下它的 公司名稱  即可
     
    -- 26. 將 表格 (Relation) product_xxx 中 40 號商品的 價格 改為 199 元
    -- >> 請在答案紙上寫下 您的 SQL 程式
    全部共 137則留言
    04-13 12:41:-- 1. 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_xxx WHERE s="7";
    04-13 12:46:-- 1061ADxxx -- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_xxx WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-13 12:52:-- 1061AD010 -- 1. 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_010 WHERE s="7";
    04-13 12:54:-- 1061AD010 -- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_010 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-13 13:06:1. SELECT * FROM ordering_025 WHERE s="7"
    04-13 13:07:-- 1031Ad022 -- SELECT * FROM ordering_022 WHERE s="7";
    04-13 13:07:2. SELECT * FROM product_106147024 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id
    04-13 13:07:-- 1061AD010 -- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_010 WHERE s_name LIKE "%華%"; -- 1061AD010 -- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_010 WHERE p ="20";
    04-13 13:07:-- 1031Ad022 -- SELECT * FROM product_xxx WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-13 13:07:-- 1031Ad022 -- SELECT * FROM product_xxx WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-13 13:09:1. SELECT * FROM ordering_106147024 WHERE s="7"
    04-13 13:11:-- 1031022 -- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- SELECT * FROM supplier_022 WHERE s_name LIKE "%華%";
    04-13 13:12:-- 1031022 -- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- SELECT * FROM ordering_022 WHERE p ="20";
    04-13 13:12:SELECT * FROM product_025 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id SELECT * FROM product_025 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id
    04-13 13:14:3. SELECT * FROM supplier_106147024 WHERE s_name LIKE "%華%"
    04-13 13:15:-- 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 SELECT * FROM ordering_036 WHERE s ="7";
    04-13 13:16:-- 1061AD007 -- 1. 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering__007 WHERE s="7";
    04-13 13:16:4. -- 列出 ordering_106147024 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_106147024 WHERE p ="20";
    04-13 13:20:-- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_036 WHERE s_name LIKE "%華%";
    04-13 13:23:-- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_036 WHERE p="20";
    04-14 11:27:1061AD006 -- 1. 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering__007 WHERE s="7";
    04-14 11:46:-- 1061AD007 -- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_010 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-14 11:48:-- 1061AD007 -- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_007 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-14 11:49:-- 1061AD007 -- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_007 WHERE s_name LIKE "%華%"; -- 1061AD007 -- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_007 WHERE p ="20";
    04-14 11:49:3. SELECT * FROM supplier_025 WHERE s_name LIKE "%華%"
    04-14 11:49:3. SELECT * FROM supplier_025 WHERE s_name LIKE "%華%"
    04-14 11:51:-- 1061ADxxx -- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_006 WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id
    04-14 11:52:-- 1061AD007 -- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_007 WHERE s_name LIKE "%華%";
    04-14 11:52:-- 1061AD007 -- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_007 WHERE p ="20";
    04-14 11:53:-- 1061AD007 -- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_007 WHERE p="20";
    04-14 11:55:-- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_006 supplier_006 WHERE s_name LIKE "%華%"
    04-14 11:58:5.SELECT * FROM ordering_025 WHERE p="20"
    04-14 11:58:5.SELECT * FROM ordering_025 WHERE p="20"
    04-14 11:59:4.-- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_006 WHERE p ="20"
    04-14 12:01:-- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_006 WHERE p="20";
    04-14 12:03:7.-- 7. 列出 ordering_xxx 資料表(Relation)中訂購數量 (qty)大於 500 的所有紀錄,按商品編號 (p) 由小到大排列。 SELECT * FROM ordering_025 WHERE qty >500 ORDER BY p ;
    04-14 12:08:-- 1061AD007 -- 6. 查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_007 WHERE address LIKE "%北%";
    04-14 12:09:6.-- 6. 查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_006 WHERE address LIKE "%北%"
    04-14 12:10:-- 1061AD007 -- 7. 列出 ordering_xxx 資料表(Relation)中訂購數量 (qty)大於 500 的所有紀錄,按商品編號 (p) 由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_007 WHERE qty >500 ORDER BY p ;
    04-14 12:11:9.-- 9. 將 supplier_xxx 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address) 更新 為 "台北市南港區研究院路1段234號"。 -- 請在答案紙上寫下您的 SQL 程式 UPDATE supplier_025 SET address="台北市南港區研究院路1段234號" WHERE s_id=5;
    04-14 12:12:9. UPDATE supplier_024 SET address ="台北市南港區研究院路1段234號" WHERE s_id = '5';
    04-14 12:17:-- 8. 列出 ordering_xxx 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) AS total FROM ordering_006 GROUP BY p ORDER BY total
    04-14 12:18:-- 9. 將 supplier_xxx 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address) 更新 為 "台北市南港區研究院路1段234號"。 -- 請在答案紙上寫下您的 UPDATE supplier_007 SET address="台北市南港區研究院路1段234號" WHERE s_id=5;
    04-14 12:19:-- 1061AD007 -- 8. 列出 ordering_xxx 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) AS total FROM ordering_007 GROUP BY p ORDER BY total
    04-14 12:26:-- 1. 列出 ordering_xxx 資料表(Relation)中 s 是 "7" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_xxx WHERE s="7";
    04-14 12:29:-- 10. 將 ordering_xxx 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除。 -- 請在答案紙上寫下您的 SQL 程式 DELETE FROM ordering_007 WHERE s="6" and p="32"
    04-14 12:31:-- 10. 將 ordering_xxx 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除。 -- 請在答案紙上寫下您的 SQL 程式 DELETE FROM ordering_006 WHERE s="6" and p="32"
    04-14 12:38:-- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_xxx WHERE p="20";
    04-14 12:38:-- 7. 列出 ordering_xxx 資料表(Relation)中訂購數量 (qty)大於 500 的所有紀錄,按商品編號 (p) 由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_XXX WHERE qty >500 ORDER BY p ;
    04-14 12:40:-- 3. 列出 supplier_xxx 資料表(Relation)中 廠商名稱 (s_name)中 有 "華" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_XXX WHERE s_name LIKE "%華%";
    04-14 12:43:-- 2. 列出 product_xxx 資料表(Relation)中 p_id 介於 "25" 到 "35"的所有紀錄,按商品編號由大到小排列。 -- 請在答案紙上寫下結果 SELECT * FROM product_XXX WHERE (p_id >= "25") AND (p_id <= "35") ORDER BY p_id;
    04-14 12:44:-- 4. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_XXX WHERE p ="20";
    04-14 12:45:-- 6. 查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_XXX WHERE address LIKE "%北%"
    04-14 12:46:-- 8. 列出 ordering_xxx 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) AS total FROM ordering_XXX GROUP BY p ORDER BY total
    04-14 12:47:-- 9. 將 supplier_xxx 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address) 更新 為 "台北市南港區研究院路1段234號"。 -- 請在答案紙上寫下您的 SQL 程式 UPDATE supplier_XXX SET address="台北市南港區研究院路1段234號" WHERE s_id=5;
    04-14 12:48:-- 10. 將 ordering_xxx 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除。 -- 請在答案紙上寫下您的 SQL 程式 DELETE FROM ordering_XXX WHERE s="6" and p="32"
    04-18 11:30:張雅筑04-14 12:48: -- 10. is good.
    04-18 11:31:張雅筑04-14 12:47: -- 9. is good.
    04-18 11:32:李宗錡04-14 12:19: -- 1061AD007 -- 8. 缺 DESC
    04-18 11:32:吳佳倩04-14 12:03: 7. is good.
    04-18 11:34:李宗錡04-14 12:08: -- 1061AD007 -- 6 缺 ORDER BY XXX
    04-18 11:36:簡達人04-13 13:23: -- 5. 缺 SUM(qty)
    04-18 11:38:楊宇良04-13 13:07: -- 1061AD010 -- 3. & 4. is good.
    04-18 11:39:張佳鈺04-13 13:07: 2. is good.
    04-18 11:40:楊宇良04-13 12:52: -- 1061AD010 -- 1. is good.
    04-20 11:09:6. 查詢 supplier_022 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_022 WHERE address LIKE "%北%" 7. 列出 ordering_022 資料表(Relation)中訂購數量 (qty)大於 500 的所有紀錄,按商品編號 (p) 由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_022 WHERE qty >500 ORDER BY p ; 8. 列出 ordering_022 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) AS total FROM ordering_022 GROUP BY p ORDER BY total 9. 將 supplier_022 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address) 更新 為 "台北市南港區研究院路1段234號"。 -- 請在答案紙上寫下您的 SQL 程式 UPDATE supplier_022 SET address="台北市南港區研究院路1段234號" WHERE s_id=5; 10. 將 ordering_022 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除。 -- 請在答案紙上寫下您的 SQL 程式 DELETE FROM ordering_022 WHERE s="6" and p="32"
    04-20 12:39:5.-- 1061AD010 -- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT * FROM ordering_006 WHERE p="20"; 6.-- 1061AD010 -- 6. 查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_006 WHERE address LIKE "%北%" 7.-- 1061AD010 -- 7. 列出 ordering_xxx 資料表(Relation)中訂購數量 (qty)大於 500 的所有紀錄,按商品編號 (p) 由小到大排列。 SELECT * FROM ordering_006 WHERE qty >500 ORDER BY p
    04-20 12:40:8.-- 1061AD010 -- 8. 列出 ordering_xxx 資料表(Relation)中每個商品編號 (p) 的訂購數量 (qty) 總和 ,按總和由大到小排列。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) AS total FROM ordering_006 GROUP BY p ORDER BY total 9.-- 1061AD010 -- 9. 將 supplier_xxx 資料表(Relation)中 廠商編號 (s_id) 為 "5" 的廠商地址 (address) 更新 為 "台北市南港區研究院路1段234號"。 -- 請在答案紙上寫下您的 SQL 程式 UPDATE supplier_006 SET address="台北市南港區研究院路1段234號" WHERE s_id=5; 10.-- 1061AD010 -- 10. 將 ordering_xxx 資料表(Relation)中 廠商編號 "6" 訂購 商品編號 (p) "32" 的 紀錄 刪除。 -- 請在答案紙上寫下您的 SQL 程式 DELETE FROM ordering_006 WHERE s="6" and p="32"
    04-20 12:40:李定廉04-20 11:09: 6. 7. 8. 9. 10. is good.
    04-20 12:43:楊宇良04-20 12:39: 5. is wrong. 6. 缺 ORDER BY 7. is good.
    04-20 12:45:楊宇良04-20 12:40: 8.-- 9. 10. are good.
    04-20 13:10:-- 5. 列出 ordering_xxx 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) FROM ordering_xxx WHERE p = "20" GROUP BY p;
    04-20 15:38:-- 5. 列出 ordering_006 資料表(Relation)中有訂購 商品編號 (p) 是 "20" 的所有紀錄的訂購數量 (qty)加總。 -- 請在答案紙上寫下結果 SELECT p, SUM(qty) FROM ordering_xxx WHERE p = "20" GROUP BY p;
    04-20 15:52:-- 6. 查詢 supplier_xxx 資料表(Relation)中 廠商地址 (address)中 有 "北" 的所有紀錄,按廠商編號由小到大排列。 -- 請在答案紙上寫下結果 SELECT * FROM supplier_006 WHERE address LIKE "%北%" ORDER BY address
    05-11 13:08:-- 13. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p=PP.p_id GROUP BY s HAVING total > 80000 ;
    05-11 13:10:-- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p=PP.p_id GROUP BY s ORDER BY total;
    05-11 16:52:-- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_xxx WHERE s_id NOT IN ( SELECT DISTINCT s FROM ordering_xxx);
    05-11 17:15:-- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_xxx SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-19 11:00:13. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p=PP.p_id GROUP BY s HAVING total > 80000 ;
    05-19 11:00:-- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p=PP.p_id GROUP BY s ORDER BY total;
    05-19 11:00: -- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_xxx WHERE s_id NOT IN ( SELECT DISTINCT s FROM ordering_xxx);
    05-19 11:01:-- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_xxx SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_xxx OO JOIN product_xxx PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-19 11:59:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_xxx GROUP BY p;
    05-19 12:15:-- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_xxx WHERE p <= '12' ORDER BY s DESC;
    05-19 12:19:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_xxx;
    05-19 12:21:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_xxx;
    05-19 12:24:-- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_xxx WHERE p <= '12' ORDER BY s DESC;
    05-19 12:25:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_xxx GROUP BY p;
    05-19 12:32:-- 13. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_007 OO JOIN product_007 PP ON OO.p=PP.p_id GROUP BY s HAVING total > 80000 ;
    05-19 12:34:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_007;
    05-19 12:35:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_007 GROUP BY p;
    05-19 12:36:-- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_007 WHERE p <= '12' ORDER BY s DESC;
    05-19 12:38:-- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_007 OO JOIN product_007 PP ON OO.p=PP.p_id GROUP BY s ORDER BY total;
    05-19 12:39:-- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_007 WHERE s_id NOT IN ( SELECT DISTINCT s FROM ordering_007);
    05-19 12:40:-- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_007 SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_007 OO JOIN product_007 PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-19 12:50:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_006 GROUP BY p -- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_006 SELECT * FROM ordering_006 WHERE p <= '12' ORDER BY s DESC -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC; -- 列出各廠商的訂購總金額 並由大到小排列 -- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_006 OO JOIN product_006 PP ON OO.p=PP.p_id GROUP BY s ORDER BY total; -- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_006 SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_006 OO JOIN product_006 PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-19 12:50:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_006 GROUP BY p -- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_006 SELECT * FROM ordering_006 WHERE p <= '12' ORDER BY s DESC -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC; -- 列出各廠商的訂購總金額 並由大到小排列 -- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_006 OO JOIN product_006 PP ON OO.p=PP.p_id GROUP BY s ORDER BY total; -- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_006 SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_006 OO JOIN product_006 PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-19 12:56:-- 15. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。 -- 請在答案紙上寫下前三筆的結果 SELECT p_id, cost FROM product_007 WHERE p_id not in ( SELECT DISTINCT p FROM ordering_007)
    05-20 23:56:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty '訂購量' FROM ordering_010; -- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, sum(qty) FROM ordering_010 GROUP by p; -- 13. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_010 JOIN product_010 ON product_010.p_id = ordering_010.p GROUP BY s HAVING total > 80000; -- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_010 AS SELECT * FROM ( SELECT * FROM ordering_010 WHERE p <= '12' ORDER BY s DESC)a; -- 15. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。 -- 請在答案紙上寫下前三筆的結果 SELECT p_id, cost FROM product_010 WHERE p_id NOT IN ( SELECT DISTINCT p FROM ordering_010); -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC; 依照訂購金額,由大到小,顯示廠商編號 跟 訂購金額。 -- 17. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address) -- 請在答案紙上寫下結果 SELECT * FROM supplier_010 WHERE s_id IN( SELECT s FROM ordering_010 WHERE p = '30'); -- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, p, qty, cost, SUM(qty*cost) total FROM ordering_010 JOIN product_010 ON ordering_010.p=product_010.p_id GROUP BY s ORDER BY total ASC LIMIT 5; -- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_010 WHERE s_id NOT IN( SELECT s FROM ordering_010); -- 20. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT s_id, address, p_id, name, cost, qty, qty*cost total FROM supplier_010 JOIN ordering_010 ON ordering_010.s=supplier_010.s_id JOIN product_010 ON product_010.p_id=ordering_010.p; -- 21. 列出 廠商之訂購金額加總 (訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost) 小於 250,000者。 -- >> 寫下 其中最多的一家廠商、與其訂購金額加總 SELECT s, SUM(qty*cost) total FROM ordering_010 JOIN product_010 ON product_010.p_id = ordering_010.p GROUP BY s HAVING total < 250000 ORDER BY total DESC; -- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量 -- >> 在答案紙上寫下來即可 SELECT p_id, SUM(qty) allqty FROM product_010 JOIN ordering_010 ON product_010.p_id=ordering_010.p GROUP BY p_id HAVING allqty > 900; -- 23. 出訂購總金額最多的一項商品 -- >> 寫下它的 商品編號、與品名 SELECT p, name, SUM(qty*cost) total FROM product_010 JOIN ordering_010 ON product_010.p_id=ordering_010.p GROUP BY p ORDER BY total DESC LIMIT 1; -- 24. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的 公司編號 (s_id) -- >> 寫下它的 公司編號 即可 SELECT s_id FROM supplier_010 WHERE s_id NOT IN ( SELECT s FROM ordering_010 WHERE p=10); -- 25. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address), 及其訂購的商品編號(p_id)> '32' 者、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- >> 寫下它的 公司名稱 即可 SELECT s_id, address FROM supplier_010 WHERE s_id IN ( SELECT s FROM ordering_010); SELECT name, cost, qty, qty*cost total FROM supplier_010 JOIN ordering_010 ON ordering_010.s=supplier_010.s_id JOIN product_010 ON product_010.p_id=ordering_010.p WHERE p_id > 32; -- 26. 將 表格 (Relation) product_xxx 中 40 號商品的 價格 改為 199 元 -- >> 請在答案紙上寫下 您的 SQL 程式 UPDATE product_010 SET cost = 199 WHERE p_id = '40';
    05-21 09:56:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_036 GROUP BY p; -- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_036 WHERE p <= '12' ORDER BY s DESC; -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC; 依照訂購金額,由大到小排列,並且顯示廠商編號及訂購金額。 -- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_036 OO JOIN product_xxx PP ON OO.p=PP.p_id GROUP BY s ORDER BY total; -- 20. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_036 SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_036 OO JOIN product_036 PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-21 20:01: -- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC;
    05-21 20:02:-- 17. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address) -- 請在答案紙上寫下結果 SELECT * FROM supplier_007 WHERE s_id IN( SELECT s FROM ordering_007 WHERE p = '30');
    05-25 12:40:以上已登錄。
    05-25 13:11:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_025 GROUP BY p;
    05-25 13:12:-- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_007 WHERE s_id NOT IN ( SELECT DISTINCT s FROM ordering_007);
    05-25 13:12:-- 20. 列出 (s_id) 與有訂購產品 的廠商編號地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_007 SS JOIN ( SELECT *, OO.qty*PP.cost AS total FROM ordering_007 OO JOIN product_007 PP ON OO.p = PP.p_id) TT ON SS.s_id = TT.s;
    05-25 13:13:-- 15. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。 -- 請在答案紙上寫下前三筆的結果 SELECT p_id, cost FROM product_007 WHERE p_id not in ( SELECT DISTINCT p FROM ordering_007)
    05-25 13:13:-- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC;
    05-25 13:13:-- 17. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address) -- 請在答案紙上寫下結果 SELECT * FROM supplier_007 WHERE s_id IN( SELECT s FROM ordering_007 WHERE p = '30');
    05-25 13:14:-- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_025 WHERE p <= '12' ORDER BY s DESC; --
    05-25 13:14:-- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, p, qty, cost, SUM(qty*cost) total FROM ordering_010 JOIN product_010 ON ordering_010.p=product_010.p_id GROUP BY s ORDER BY total ASC LIMIT 5;
    05-25 13:16:-- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 ] SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC; 依照訂購金額,由大到小,顯示廠商編號 跟 訂購金額。
    05-25 13:19:-- 24. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的 公司編號 (s_id) -- >> 寫下它的 公司編號 即可 SELECT DISTINCT s FROM ordering_xxx WHERE s NOT IN ( SELECT s FROM ordering_xxx WHERE p=10);
    05-25 13:19:留言...18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, p, qty, cost, SUM(qty*cost) total FROM ordering_025 JOIN product_025 ON ordering_025.p=product_025.p_id GROUP BY s ORDER BY total ASC LIMIT 5;
    05-25 13:22:-- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量 -- >> 在答案紙上寫下來即可 SELECT p_id , SUM(qty) sdg FROM ordering_007 JOIN product_007 ON ordering_007.p=product_007.p_id GROUP BY p_id HAVING sdg > 900;
    05-25 13:22:-- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量 -- >> 在答案紙上寫下來即可 SELECT p_id , SUM(qty) sdg FROM ordering_007 JOIN product_007 ON ordering_007.p=product_007.p_id GROUP BY p_id HAVING sdg > 900;
    05-25 13:22:-- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量 -- >> 在答案紙上寫下來即可 SELECT p_id , SUM(qty) sdg FROM ordering_007 JOIN product_007 ON ordering_007.p=product_007.p_id GROUP BY p_id HAVING sdg > 900;
    05-25 13:23:-- 24. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的 公司編號 (s_id) -- >> 寫下它的 公司編號 即可 SELECT DISTINCT s FROM ordering_010 WHERE s NOT IN ( SELECT s FROM ordering_010 WHERE p=10);
    06-05 22:31:以上已登錄
    06-16 11:54:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_023;
    06-16 11:55:-- 11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_023;
    06-16 11:56:-- 12. ordering_xxx 資料表中,各P (產品編號)之訂購量加總 -- 請在答案紙上寫下前三筆的結果 SELECT p, SUM(qty) FROM ordering_023 GROUP BY p;
    06-16 11:57:-- 13. 列出 廠商之訂購金額加總大於 80,000者。 -- 訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_023 OO JOIN product_023 PP ON OO.p=PP.p_id GROUP BY s HAVING total > 80000 ;
    06-16 12:17:11. 列出 ordering_xxx 資料表(Relation)中 S (以廠商作為別名 alias)、P、QTY (以訂購量作為別名)。 -- 請在答案紙上寫下前三筆的結果 SELECT s '廠商', p, qty FROM ordering_xxx;
    06-16 12:19:-- 14. 按廠商編號 由大到小排序,列出 ordering_xxx 資料表中 訂購 p 小於等於 '12' 的所有資料列 -- 另存到一個資料表 temp_xxx -- 請在答案紙上寫下 temp_xxx 前三筆的結果 CREATE TABLE temp_xxx SELECT * FROM ordering_023 WHERE p <= '12' ORDER BY s DESC;
    06-16 12:21:-- 15. 列出 product_xxx 資料表中,未被訂購者的 P_id (產品編號)與 cost(單價)。 -- 請在答案紙上寫下前三筆的結果 SELECT p_id, cost FROM product_023 WHERE p_id not in ( SELECT DISTINCT p FROM ordering_023)
    06-16 12:22:-- 16. 下列SQL可完成什麼? 請在答案紙上寫下答案。 SELECT ordering_xxx.s, sum(qty*cost) AS total FROM ordering_xxx, product_xxx WHERE ordering_xxx.p=product_xxx.p_id GROUP BY ordering_xxx.s ORDER BY Total DESC;
    06-16 12:23:-- 17. 列出 supplier_xxx 資料表中 有訂購 30 號產品者(P=30)的 廠商編號 (s_id), 廠商名稱 (s_name), 與 地址 (address) -- 請在答案紙上寫下結果 SELECT * FROM supplier_023 WHERE s_id IN( SELECT s FROM ordering_023 WHERE p = '30');
    06-16 12:24:-- 18. 列出訂購總金額加總為後五名者 (最少的5家) 的S,P,qty,cost,與訂購總金額加總 -- 請在答案紙上寫下前三筆的結果 SELECT s, SUM(qty*cost) total FROM ordering_023 OO JOIN product_023 PP ON OO.p=PP.p_id GROUP BY s ORDER BY total;
    06-16 12:25:-- 19. 列出 未有訂購產品 的廠商編號 (s_id)、名稱(s_name),與地址 (address)。 -- 請在答案紙上寫下前三筆的結果 SELECT * FROM supplier_023 WHERE s_id NOT IN ( SELECT DISTINCT s FROM ordering_023);
    06-16 12:28:-- 20. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address),及其訂購的商品編號(p_id)、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- 請在答案紙上寫下前三筆的結果 SELECT s_id, address, p_id, name, cost, qty, qty*cost total FROM supplier_023 JOIN ordering_023 ON ordering_023.s=supplier_023.s_id JOIN product_023 ON product_023.p_id=ordering_023.p;
    06-16 12:30:-- 21. 列出 廠商之訂購金額加總 (訂購金額 為 table ordering_xxx 之訂購量 qty * table product_xxx 的 價格 cost) 小於 250,000者。 -- >> 寫下 其中最多的一家廠商、與其訂購金額加總 SELECT s, SUM(qty*cost) total FROM ordering_023 JOIN product_023 ON product_023.p_id = ordering_023.p GROUP BY s HAVING total < 250000 ORDER BY total DESC;
    06-16 12:30:-- 22. 列出 ordering_xxx 資料表中,被訂購總數量 大於 900 者的 P_id (產品編號)與 總數量 -- >> 在答案紙上寫下來即可 SELECT p_id, SUM(qty) allqty FROM product_023 JOIN ordering_023 ON product_023.p_id=ordering_023.p GROUP BY p_id HAVING allqty > 900;
    06-16 12:31:-- 23. 出訂購總金額最多的一項商品 -- >> 寫下它的 商品編號、與品名 SELECT p, name, SUM(qty*cost) total FROM product_023 JOIN ordering_023 ON product_023.p_id=ordering_023.p GROUP BY p ORDER BY total DESC LIMIT 1;
    06-16 12:32:-- 24. 列出有訂購產品的廠商中,但並沒訂購 '10' 商品的 公司編號 (s_id) -- >> 寫下它的 公司編號 即可 SELECT s_id FROM supplier_023 WHERE s_id NOT IN ( SELECT s FROM ordering_023 WHERE p=10);
    06-16 12:38:-- 25. 列出 有訂購產品 的廠商編號 (s_id) 與地址 (address), 及其訂購的商品編號(p_id)> '32' 者、品名(name),價格 (cost),和數量(qty), -- 以及各項商品的訂購金額 (qty*cost)。 -- >> 寫下它的 公司名稱 即可 SELECT s_id, address FROM supplier_023 WHERE s_id IN ( SELECT s FROM ordering_023); SELECT name, cost, qty, qty*cost total FROM supplier_023 JOIN ordering_023 ON ordering_023.s=supplier_023.s_id JOIN product_023 ON product_023.p_id=ordering_023.p WHERE p_id > 32;
    06-16 12:39:-- 26. 將 表格 (Relation) product_xxx 中 40 號商品的 價格 改為 199 元 -- >> 請在答案紙上寫下 您的 SQL 程式 UPDATE product_023 SET cost = 199 WHERE p_id = '40';
    登入帳號密碼代表遵守學術網路規範


    文章分類 Labels


    最新文章 Top10

    中華科技大學數位化學習歷程 - 意見反應