目录
10-109 3-2-(c)查询所有出售便携式电脑(而不出售PC机)的生产厂商
10-110 3-2-(d)查询在两种或两种以上PC机上出现的硬盘容量
10-111 3-2-(e)查询拥有相同速度和内存的PC机的成对的型号
10-109 3-2-(c)查询所有出售便携式电脑(而不出售PC机)的生产厂商
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询所有出售便携式电脑
(而不出售PC
机)的生产厂商。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE product
( maker CHAR(20) , --制造商
model CHAR(20) NOT NULL, --产品型号
type CHAR(20), --产品类型
PRIMARY KEY(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)
);
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)
);
表样例
product
表:
maker | model | type |
---|---|---|
D | 2003 | 便携式电脑 |
D | 3001 | 打印机 |
B | 1006 | 个人电脑 |
B | 3002 | 打印机 |
E | 2004 | 便携式电脑 |
D | 1008 | 个人电脑 |
A | 1001 | 个人电脑 |
A | 1002 | 个人电脑 |
pc
表:
model | speed | ram | hd | cd | price |
---|---|---|---|---|---|
1001 | 133.00 | 16 | 1.60 | 6X | 1595 |
1002 | 120.00 | 16 | 1.60 | 6X | 1399 |
1008 | 180.00 | 32 | 2.00 | 8X | 3699 |
laptop
表:
model | speed | ram | hd | screen | price |
---|---|---|---|---|---|
2003 | 117 | 32 | 1.00 | 11.20 | 3599 |
2004 | 133 | 16 | 1.10 | 11.30 | 3699 |
输出样例:
maker |
---|
E |
SELECT DISTINCT
product.maker
from
laptop,product
where
laptop.model = product.model
AND
product.maker
NOT IN (SELECT maker FROM pc,product
WHERE pc.model = product.model);
10-110 3-2-(d)查询在两种或两种以上PC机上出现的硬盘容量
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询在两种或两种以上PC
机上出现的硬盘容量。
提示:请使用SELECT语句作答。
表结构:
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)
);
表样例
pc
表:
model | speed | ram | hd | cd | price |
---|---|---|---|---|---|
1001 | 133.00 | 16 | 1.60 | 6X | 1595 |
1002 | 120.00 | 16 | 1.60 | 6X | 1399 |
1003 | 166.00 | 24 | 2.50 | 6X | 1899 |
1004 | 166.00 | 32 | 2.50 | 8X | 1999 |
1008 | 180.00 | 32 | 2.00 | 8X | 3699 |
1009 | 200.00 | 32 | 2.50 | 8X | 2599 |
输出样例:
hd |
---|
1.60 |
2.50 |
SELECT
hd
FROM
pc
GROUP BY
hd
HAVING
count(*) >= 2;
10-111 3-2-(e)查询拥有相同速度和内存的PC机的成对的型号
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询拥有相同速度和内存的PC机的成对的型号,输出结果属性名分别为model1,model2。
提示:请使用SELECT语句作答。
表结构:
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)
);
表样例
pc
表:
model | speed | ram | hd | cd | price |
---|---|---|---|---|---|
1001 | 133.00 | 16 | 1.60 | 6X | 1595 |
1002 | 120.00 | 16 | 1.60 | 6X | 1399 |
1003 | 166.00 | 24 | 2.50 | 6X | 1899 |
1004 | 166.00 | 32 | 2.50 | 8X | 1999 |
1006 | 200.00 | 32 | 3.10 | 8X | 2099 |
1008 | 180.00 | 32 | 2.00 | 8X | 3699 |
1009 | 200.00 | 32 | 2.50 | 8X | 2599 |
输出样例:
model1 | model2 |
---|---|
1006 | 1009 |
SELECT
a.model as model1,b.model as model2
FROM
pc as a,pc as b
WHERE
a.speed=b.speed and a.ram=b.ram and a.model<b.model
ORDER BY
model1;
10-112 A1-6在顾客表中找出不是特定城市的顾客信息
分数 20
全屏浏览题目
切换布局
作者 柯海丰
单位 浙大城市学院
在顾客表(customers)
中找出所在城市(City)
不是Madrid
、Torino
和Paris
的顾客编号(CustomerID)
及电话(Phone)
提示:请使用SELECT语句作答。
表结构:
列名 | 数据类型 | 长度 | 主码 | 说明 |
---|---|---|---|---|
CustomerID | varchar | 5 | √ | 顾客编号 |
CompanyName | varchar | 40 | 公司名称 | |
ContactName | varchar | 30 | 联系姓名 | |
ContactTitle | varchar | 30 | 联系头衔 | |
Address | varchar | 60 | 地址 | |
City | varchar | 15 | 城市 | |
Region | varchar | 15 | 区域 | |
PostalCode | varchar | 10 | 邮政编码 | |
Country | varchar | 15 | 国家 | |
Phone | varchar | 24 | 电话 | |
Fax | varchar | 24 | 传真 |
表样例
customers
表:
CustomerID | City | Phone |
---|---|---|
ALFKI | Berlin | 030-0074321 |
ANATR | Mxico D.F. | (5) 555-4729 |
ANTON | Mxico D.F. | (5) 555-3932 |
AROUT | London | (171) 555-7788 |
BERGS | Lule | 0921-12 34 65 |
BLAUS | Mannheim | 0621-08460 |
BLONP | Strasbourg | 88.60.15.31 |
BOLID | Madrid | (91) 555 22 82 |
BONAP | Marseille | 91.24.45.40 |
BOTTM | Tsawassen | (604) 555-4729 |
输出样例:
CustomerID | Phone |
---|---|
ALFKI | 030-0074321 |
ANATR | (5) 555-4729 |
ANTON | (5) 555-3932 |
AROUT | (171) 555-7788 |
BERGS | 0921-12 34 65 |
BLAUS | 0621-08460 |
BLONP | 88.60.15.31 |
BONAP | 91.24.45.40 |
BOTTM | (604) 555-4729 |
SELECT
CustomerID,Phone
FROM
customers
WHERE
City NOT IN('Madrid','Torino','Paris')