10-131 4-3 查询速度低于任何PC的便携式电脑
本题目要求编写SQL语句,
查询速度
低于任何PC的便携式电脑。
提示:请使用SELECT语句作答。
SELECT model
FROM laptop
WHERE speed < all (SELECT speed FROM pc)
10-132 4-4 查询具有最高价格的机器的型号,机器包括PC、Laptop、Printer
本题目要求编写SQL语句,查询具有最高价格的机器的型号,机器包括PC、Laptop、Printer。
提示:请使用SELECT语句作答。
SELECT model
FROM (select model, price from pc
UNION
select model, price from laptop
UNION
select model, price from printer) AS A
ORDER BY A.price DESC
limit 1
10-133 4-5 查询具有最低价格的的彩色打印机的制造商
本题目要求编写SQL语句,
查询具有最低价格的的彩色
打印机的制造商。
提示:请使用SELECT语句作答。
select maker
from product join printer on product.model=printer.model
where color='1'
and price in (select min(price)
from product join printer on product.model=printer.model
where color='1')
10-134 4-6 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商
本题目要求编写SQL语句,
查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商。
提示:请使用SELECT语句作答。
select a.maker from (select maker,speed from pc
join product on pc.model=product.model
where pc.ram=(select min(ram) from pc)) a
where a.speed=(select max(speed) from
(select maker,speed from pc
join product on pc.model=product.model
where pc.ram=(select min(ram) from pc)) a
)
10-135 5-1 查询销售便携式电脑但不销售PC的厂商
本题目要求编写SQL语句,
查询销售便携式电脑
但不销售PC
的厂商。
提示:请使用SELECT语句作答。
select maker
from product
where type='便携式电脑' and maker not in(select maker from product where type='个人电脑')
group by maker
10-136 5-2 查询至少生产两种不同的计算机(PC或便携式电脑)且机器速度至少为133的厂商
本题目要求编写SQL语句,
查询至少生产两种不同型号的计算机(PC
或便携式电脑
)且机器速度至少为133
的厂商,输出结果按照制造商升序排列。
提示:
本题有三种情况:
(1) 至少生产两种不同PC的厂商
(2) 至少生产两种不同便携式电脑的厂商
(3) 至少生产一种PC且至少生产一种便携式电脑的厂商。
select distinct maker
from(select maker from
(select maker, count(maker)
from (select maker
from pc,product
where pc.model = product.model
and pc.speed >= 133) as temp1
group by maker having count(maker) >= 2
union
select maker, count(maker)
from (select maker
from laptop,product
where laptop.model = product.model
and laptop.speed >= 133) as temp2
group by maker having count(maker) >= 2) as temp3
union
select maker
from laptop,product
where laptop.model = product.model
and product.maker in (select maker
from pc,product
where pc.model = product.model)) as temp4
order by maker
10-137 5-3 查询生产最高速度的计算机(PC或便携式电脑)厂商
本题目要求编写SQL语句,
查询生产最高速度的计算机(PC或便携式电脑)厂商,查询结果按照厂商升序排列。
提示:请使用SELECT语句作答。
SELECT DISTINCT maker
FROM product
WHERE model IN(SELECT model
FROM (SELECT model,speed FROM(
SELECT model,speed
FROM pc
UNION
SELECT model,speed
FROM laptop)AS b)AS c
WHERE speed IN (
SELECT MAX(speed)
FROM(SELECT model,speed
FROM pc
UNION
SELECT model,speed
FROM laptop)AS b)
)
10-138 5-4 查询至少生产三种不同速度PC的厂商
本题目要求编写SQL语句,
查询至少生产三种不同速度PC的厂商。
提示:请使用SELECT语句作答。
select maker
from product join pc on product.model=pc.model
group by maker
having count(distinct speed)>=3
10-139 5-5 查询只卖三种不同型号PC的厂商
本题目要求编写SQL语句,
查询只卖三
种不同型号PC
的厂商。
提示:请使用SELECT语句作答。
select distinct a.maker from(
select pr.maker,pr.model,pr.type
from product pr join pc p on p.model=pr.model
) a
where a.maker not in
(select distinct maker from product where type<>'个人电脑')
group by a.maker
having count(model)=3
10-140 6-2 查询价格超过2500美元的便携式电脑的平均速度
本题目要求编写SQL语句,
查询价格超过2500
美元的便携式电脑的平均速度。
select avg(speed) as avg_speed
from laptop
where price>2500