10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例
生活随笔
收集整理的這篇文章主要介紹了
10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
前言:測試用表
貼心杰將這個測試表分享給大家 ,如果大家做題的時候發(fā)現(xiàn)那個點過不去,一定不要直接看別人的博客,先自己測試用例,如果思路也對 ,驗證數(shù)據(jù)也對,還有錯誤 你再看看別人的思路!!!
CREATE TABLE product ( maker CHAR(20) , -- 制造商model CHAR(20) NOT NULL, -- 產品型號TYPE CHAR(20), -- 產品類型PRIMARY KEY(model) ); CREATE TABLE pc ( model CHAR(20) NOT NULL, -- 型號speed DECIMAL(6,2), -- 速度ram INT, -- 內存hd DECIMAL(6,2), -- 硬盤容量cd CHAR(4), -- 光驅price INT, -- 價錢PRIMARY KEY(model),FOREIGN KEY(model) REFERENCES product(model) ); CREATE TABLE laptop ( model CHAR(20) NOT NULL, -- 型號speed DECIMAL(6,2), -- 速度 ram INT, -- 內存hd DECIMAL(6,2), -- 硬盤容量screen DECIMAL(6,2), -- 屏幕大小price INT, -- 價錢PRIMARY KEY(model),FOREIGN KEY(model) REFERENCES product(model) );INSERT INTO productVALUES('D','2001','便攜式電腦'),('D','2002','便攜式電腦'),('D','3001','打印機'),('D','1008','個人電腦'),('D','1009','個人電腦');INSERT INTO productVALUES('A',1001,'個人電腦'),('A',1002,'個人電腦');INSERT INTO pcVALUES('1008',180.00,32,2.00,'8X',3699),('1009',200.00,32,2.50,'8X',2599);INSERT INTO pcVALUES('1001' ,133.00, 16, 1.60, '6X', 1595),('1002', 120.00, 16 ,1.60, '6X', 1399);INSERT INTO laptopVALUES('2001',100.00,20,1.10,9.50,1999),(2002,117.00,12,0.75,11.30,2499);一:10-4 6-4 查詢廠商"D"生產的PC和便攜式電腦的平均價格 (10 分)
-- 查詢廠商D生產的PC和便攜式電腦的平均價格-- 分析:1.查詢出D和PC一個表 字段為price -- 2.查詢D和laptop一個表 字段為price -- 3.union all 兩個表 然后求出平均值和 注意 union all 是不去重的 union 是去重的 -- 4.還有就是這道題最后求取的結果是要四舍五入的 要用 round(平均值) 別問我怎么知道的,我是試出來的 先用的floor 不對 -- 然后改成 round 就對了 -- -- 1. -- select price -- from product,pc -- where product.model = pc.model;-- -- 2. -- select price -- from product,laptop -- where product.model = laptop.model;-- 3. SELECT round(AVG(price)) AS avg_priceFROM (SELECT priceFROM product,pcWHERE product.model = pc.modelAND maker = 'D'UNION ALLSELECT priceFROM product,laptopWHERE product.model = laptop.model AND maker = 'D') temp;二:10-3 6-3 查詢廠商"A"生產的PC的平均價格 (10 分)
-- 查詢廠商A生產的PC的平均價格。-- 分析:1.查詢出A生產的PC -- 2.求其平均價格select avg(price) as avg_pricefrom product,pcwhere product.model = pc.modeland maker = 'A';三:10-6 6-6 查詢各廠商生產的便攜式電腦的顯示器平均尺寸 (10 分)
-- 查詢各廠商生產的便攜式電腦的顯示器平均尺寸。 -- 分析:1.先求出各個廠商對應的電腦屏幕 -- 2.將其作為子表進行分組查詢 平均尺寸;-- 錯誤示例:聚合函數(shù)不能和字段一塊用 當 不是group by 的時候 -- select maker,avg(screen) as avg_screen -- from product,laptop -- where product.model = laptop.model;-- -- 1. -- select maker,screen -- from product,laptop -- where product.model = laptop.model;-- 2. select maker,avg(screen) as avg_screenfrom (select maker,screenfrom product,laptopwhere product.model = laptop.model) tempgroup by maker;四:10-7 6-7 查詢生產三種不同型號的PC的廠商 (10 分)
-- 查詢生產三種不同型號的PC的廠商。 -- 分析:1.先將pc表和product表聯(lián)合起來 字段為廠商 和 型號 這樣求出 每個廠商對應的pc型號 表1 -- 2.對表1進行分組查詢 字段為 廠商 和 型號個數(shù) 并篩選出數(shù)量為3的廠商 表2 -- 3.對表2進行查詢 -- -- 1. -- select maker,pc.model -- from pc,product -- where pc.model = product.model-- -- 2 -- select maker,count(maker) as nums -- from (select maker,pc.model -- from pc,product -- where pc.model = product.model) temp -- group by maker having nums = 3; -- -- 3select makerfrom (select maker,count(maker) as numsfrom (select maker,pc.modelfrom pc,productwhere pc.model = product.model) tempgroup by maker having nums = 3) temp1五:10-10 6-10 查詢所有生產打印機的廠商生產的PC的硬盤平均容量 (10 分)
-- 查詢所有生產打印機的廠商生產的PC的硬盤平均容量。-- 分析: -- 1.查詢出既生產 打印機 又生產 PC 的廠商 -- 1>.查詢出生產打印機的廠商 表1 -- 2>.查詢product表 字段為 廠商,model,條件為 maker 來自 表1 and type = 個人電腦 表2 -- 2.聯(lián)合表2和PC表求出 平均硬盤容量-- 1.1 -- select maker -- from product,printer -- where product.model = printer.model-- -- 1.2 -- select maker,product.model -- from product -- where maker in (select maker -- from product,printer -- where product.model = printer.model) -- and type = "個人電腦"-- 2 select avg(hd) as avg_hdfrom pc,(select maker,product.modelfrom productwhere maker in (select makerfrom product,printerwhere product.model = printer.model)and type = "個人電腦") tempwhere pc.model = temp.model;其他 有疑問的題可以留言 , 上方分享一下我認為很好的題!!!!!!!!!
寫sql語句 一定要有自己的分析,然后一步步寫寫,最重要的你的邏輯表達出來,這幾道破題,不是最重要的
好了 有疑問的題可以留言 或擇你認為有難度的題也可以分享給我 ,我非常樂意做題,加油陌生人
總結
以上是生活随笔為你收集整理的10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 毛峰茶叶的功效与作用、禁忌和食用方法
- 下一篇: 蒜蓉酱的功效与作用、禁忌和食用方法