二、簡單應用(2小題,每題20分,計40分)
在考生目錄下完成如下簡單應用:
1. 將order_detail1表中的全部記錄追加到order_detail表中,然后用SQL SELECT語句完成查詢:列出所有訂購單的訂單號、訂購日期、器件號、器件名和總金額(按訂單號升序,訂單號相同再按總金額降序),并將結果存儲到results表中(其中訂單號、訂購日期、總金額取自order_list表,器件號、器件名取自order_detail表)。
解答:
追加記錄:
close all
use order_detail1
append from order_detail
SQL查詢部分可以用查詢設計器的方法:
首先將要操作的兩個表添加到查詢設計器:(order_list和order_detail)
選擇輸出字段,注意各表字段來源按試題要求進行:其中訂單號、訂購日期、總金額取自order_list表,器件號、器件名取自order_detail表,設置排序依據,設置輸出去向到表results。確定后,運行查詢即可。
方法2:在命令框中直接輸入SQL語句:
SELECT Order_list.訂單號, Order_list.訂購日期, Order_list.總金額,;
Order_detail.器件號, Order_detail.器件名;
FROM 訂貨管理!order_list INNER JOIN 訂貨管理!order_detail ;
ON Order_list.訂單號 = Order_detail.訂單號;
ORDER BY Order_list.訂單號, Order_list.總金額 DESC;
INTO TABLE results.dbf
2. 打開modi1.prg命令文件,該命令文件包含3條SQL語句,每條SQL語句中都有一個錯誤,請改正之(注意:在出現錯誤的地方直接改正,不可以改變SQL語句的結構和SQL短語的順序)
modi1.prg程序如下:
&&所有器件的單價增加5元
UPDATE order_detail1 SET 單價 WITH 單價 + 5
&&計算每種器件的平均單價
SELECT 器件號,AVG(單價) AS 平均價 FROM order_detail1 ORDER BY 器件號 INTO CURSOR lsb
&&查詢平均價小于500的記錄
SELECT * FROM lsb FOR 平均價 < 500
解答:
錯誤1:WITH應改為:“=”
錯誤2、ORDER改為:GROUP
錯誤3、FOR應改為:WHERE
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |