10-95 2-2-(f)查询具有1GB以上的硬盘容量而价格低于2000美元的所有个人计算机的型号、速度以及硬盘容量
本题目要求编写SQL语句,
检索出pc
表中具有1
GB以上的硬盘容量而价格低于2000
美元的所有个人计算机的型号(model)、速度(speed)以及硬盘容量(hd)
提示:请使用SELECT语句作答。
表结构:
请在这里写定义表结构的SQL语句。例如:
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 |
输出样例:
model | speed | hd |
---|---|---|
1001 | 133.00 | 1.60 |
1002 | 120.00 | 1.60 |
1003 | 166.00 | 2.50 |
1004 | 166.00 | 2.50 |
SELECT
model,speed,hd
FROM
pc
WHERE
hd > 1 AND price < 2000;
10-98 3-1-(a) 查询电影“M3”中的男影星
本题目要求编写SQL语句,
查询电影M3
中的男
影星。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE MovieStar
( name CHAR(20) NOT NULL, --姓名
address VARCHAR(255), --地址
gender CHAR(1) CHECK(gender IN('F','M')), --性别
birthdate DATE, --生日
PRIMARY KEY(name)
);
CREATE TABLE StarsIn
( movieTitle CHAR(20), --电影名称
movieYear INT , --拍摄年份
starName CHAR(20), --演员姓名
PRIMARY KEY(movieTitle,movieYear,starName),
FOREIGN KEY(starName) REFERENCES MovieStar(name)
);
表样例
MovieStar
表:
name | address | gender | birthdate |
---|---|---|---|
S1 | sa1 | F | 1990-01-01 |
S2 | sa2 | F | 1980-01-01 |
S3 | sa3 | M | 1985-12-10 |
S4 | sa4 | F | 1994-11-01 |
StarsIn
表:
movieTitle | movieYear | starName |
---|---|---|
M1 | 2018 | S1 |
M2 | 2018 | S1 |
M3 | 2019 | S2 |
M4 | 2017 | S3 |
M3 | 2019 | S3 |
M3 | 2019 | S4 |
输出样例:
name |
---|
S3 |
SELECT
name
FROM
MovieStar
WHERE
name in (SELECT starName FROM StarsIn
WHERE movieTitle = 'M3')
AND gender = 'M';
10-99 3-1-(b) 查询st1制片公司的总裁
本题目要求编写SQL语句,
查询st1
制片公司的总裁。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE MovieExec
( name CHAR(20), --姓名
address VARCHAR(255), --地址
certID CHAR(10) NOT NULL, --身份证号
netWorth INT, --资产
PRIMARY KEY(certID)
);
CREATE TABLE Studio
( name CHAR(20) NOT NULL , --公司名称
address VARCHAR(255), --地址
presCertID CHAR(10) , --行政总裁
PRIMARY KEY(name),
FOREIGN KEY(presCertID) REFERENCES MovieExec(certID)
);
表样例
MovieExec
表:
name | address | certID | netWorth |
---|---|---|---|
a1 | b1 | 0001 | 111 |
a2 | b2 | 0002 | 222 |
a3 | b3 | 0003 | 333 |
a4 | b4 | 0004 | 444 |
S4 | sa4 | 0005 | 444 |
Studio
表:
name | address | presCertID |
---|---|---|
st1 | sta1 | 0001 |
st2 | sta2 | 0003 |
输出样例:
name |
---|
a1 |
SELECT
a.name
FROM
MovieExec a, Studio b
WHERE
b.presCertID = a.certID
AND
b.name = 'st1'
10-100 3-1-(c)查询在st1公司于2018年制作的电影中出演的影星
本题目要求编写SQL语句,
查询st1
制片公司的总裁。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE MovieExec
( name CHAR(20), --姓名
address VARCHAR(255), --地址
certID CHAR(10) NOT NULL, --身份证号
netWorth INT, --资产
PRIMARY KEY(certID)
);
CREATE TABLE Studio
( name CHAR(20) NOT NULL , --公司名称
address VARCHAR(255), --地址
presCertID CHAR(10) , --行政总裁
PRIMARY KEY(name),
FOREIGN KEY(presCertID) REFERENCES MovieExec(certID)
);
表样例
MovieExec
表:
name | address | certID | netWorth |
---|---|---|---|
a1 | b1 | 0001 | 111 |
a2 | b2 | 0002 | 222 |
a3 | b3 | 0003 | 333 |
a4 | b4 | 0004 | 444 |
S4 | sa4 | 0005 | 444 |
Studio
表:
name | address | presCertID |
---|---|---|
st1 | sta1 | 0001 |
st2 | sta2 | 0003 |
输出样例:
name |
---|
a1 |
SELECT
a.name
FROM
MovieExec a, Studio b
WHERE
b.presCertID = a.certID
AND
b.name = 'st1'
10-100 3-1-(c)查询在st1公司于2018年制作的电影中出演的影星
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询在st1
公司于2018
年制作的电影中出演的影星。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE Movie
( title CHAR(20) NOT NULL, --电影名称
year INT NOT NULL, --拍摄年份
length INT , --长度
inColor BIT DEFAULT 1, --是否彩色
studioName CHAR(20), --所属电影公司
producerCertID CHAR(10), --制片人
PRIMARY KEY (title,year),
);
CREATE TABLE StarsIn
( movieTitle CHAR(20), --电影名称
movieYear INT , --拍摄年份
starName CHAR(20), --演员姓名
PRIMARY KEY(movieTitle,movieYear,starName),
FOREIGN KEY(movieTitle, movieYear) REFERENCES Movie(title,year)
);
表样例
Movie
表:
title | year | length | inColor | studioName | producerCertID |
---|---|---|---|---|---|
M1 | 2018 | 100 | 1 | st1 | 0001 |
M2 | 2018 | 100 | 1 | st1 | 0002 |
M3 | 2019 | 100 | 1 | st2 | 0003 |
M4 | 2017 | 100 | 1 | st2 | 0004 |
M5 | 2014 | 100 | 1 | st2 | 0004 |
M6 | 2015 | 100 | 1 | st2 | 0004 |
M7 | 2018 | 95 | 1 | st2 | 0003 |
StarsIn
表:
movieTitle | movieYear | starName |
---|---|---|
M1 | 2018 | S1 |
M2 | 2018 | S1 |
M3 | 2019 | S2 |
M4 | 2017 | S3 |
M3 | 2019 | S3 |
M3 | 2019 | S4 |
M7 | 2018 | S2 |
输出样例:
starName |
---|
S1 |
SELECT DISTINCT
starName
FROM
StarsIn
WHERE
movieTitle IN (SELECT title FROM Movie
WHERE studioName = 'st1'
AND YEAR = 2018)
AND
movieYear = 2018;
10-101 A1-2根据所在国家查找订单信息
分数 20
全屏浏览题目
切换布局
作者 柯海丰
单位 浙大城市学院
在订单表(orders)
中找出所在国家(ShipCountry)
是Germany
或Brazil
或France
的订单编号(OrderID)
和顾客编号(CustomerID)
提示:请使用SELECT语句作答。
表结构:
列名 | 数据类型 | 长度 | 主码 | 说明 |
---|---|---|---|---|
OrderID | int | 11 | √ | 订单编号 |
CustomerID | varchar | 5 | 顾客编号 | |
EmployeeID | int | 11 | 员工编号 | |
OrderDate | datetime, | 订购日期 | ||
RequiredDate | datetime, | 预计到达日期 | ||
ShippedDate | datetime, | 发货日期 | ||
ShipVia | int | 11 | 运货商 | |
Freight | decimal | 10,4 | 运费 | |
ShipName | varchar | 40 | 货主姓名 | |
ShipAddress | varchar | 60 | 货主地址 | |
ShipCity | varchar | 15 | 所在城市 | |
ShipRegion | varchar | 15 | 区域 | |
ShipPostalCode | varchar | 10 | 邮政编码 | |
ShipCountry | varchar | 15 | 所在国家 |
表样例
请在这里给出上述表结构对应的表样例。例如
orders
表:
OrderID | CustomerID | ShipCountry |
---|---|---|
10248 | VINET | France |
10249 | TOMSP | Germany |
10250 | HANAR | Brazil |
10251 | VICTE | France |
10252 | SUPRD | Belgium |
10253 | HANAR | Brazil |
10254 | CHOPS | Switzerland |
10255 | RICSU | Switzerland |
10256 | WELLI | Brazil |
10257 | HILAA | Venezuela |
输出样例:
OrderID | CustomerID |
---|---|
10248 | VINET |
10249 | TOMSP |
10250 | HANAR |
10251 | VICTE |
10253 | HANAR |
10256 | WELLI |
SELECT
OrderID , CustomerID
FROM
orders
WHERE
ShipCountry = 'Germany' OR ShipCountry = 'Brazil' OR ShipCountry = 'France'
10-105 3-1-(e)查询比a1更富有的行政长官
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询比a1
更富有的行政长官。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE MovieExec
( name CHAR(20), --姓名
address VARCHAR(255), --地址
certID CHAR(10) NOT NULL, --身份证号
netWorth INT, --资产
PRIMARY KEY(certID)
);
CREATE TABLE Studio
( name CHAR(20) NOT NULL , --公司名称
address VARCHAR(255), --地址
presCertID CHAR(10) , --行政总裁
PRIMARY KEY(name),
FOREIGN KEY(presCertID) REFERENCES MovieExec(certID)
);
表样例
MovieExec
表
name | address | certID | netWorth |
---|---|---|---|
a1 | b1 | 0001 | 111 |
a2 | b2 | 0002 | 222 |
a3 | b3 | 0003 | 333 |
a4 | b4 | 0004 | 444 |
S4 | sa4 | 0005 | 444 |
Studio
表
name | address | presCertID |
---|---|---|
st1 | sta1 | 0001 |
st2 | sta2 | 0003 |
输出样例:
name |
---|
a3 |
SELECT
name
FROM
MovieExec
WHERE
networth > ANY(
SELECT networth
FROM MovieExec
WHERE name='a1'
)
AND
certID IN (
SELECT presCertID
FROM Studio
)
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-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-120 spj-查询比p6零件供应数量都高的零件
分数 10
全屏浏览题目
切换布局
作者 张庆
单位 集美大学
本题目要求编写SQL语句,在SPJ
数据库中,查询在供应工程项目零件时,比p6
零件每次的供应数量都高的零件pno
。
提示:请使用SELECT语句作答。
表结构:
请在这里写定义表结构的SQL语句。例如:
CREATE TABLE `j` ( -- 工程项目表
`jno` char(3) NOT NULL,-- 工程项目号
`jname` varchar(10) DEFAULT NULL,
`city` varchar(10) DEFAULT NULL,
PRIMARY KEY (`jno`)
);
CREATE TABLE `p` ( -- 零件表
`pno` char(3) NOT NULL, -- 零件号
`pname` varchar(10) DEFAULT NULL,
`color` char(2) DEFAULT NULL,
`weight` smallint(6) DEFAULT NULL,
PRIMARY KEY (`pno`)
);
CREATE TABLE `s` ( -- 供应商表
`sno` char(3) NOT NULL, -- 供应商号
`sname` varchar(10) DEFAULT NULL,
`status` char(2) DEFAULT NULL,
`city` varchar(10) DEFAULT NULL,
PRIMARY KEY (`sno`)
);
CREATE TABLE `spj` ( -- 零件供应表
`sno` char(3) NOT NULL,
`pno` char(3) NOT NULL,
`jno` char(3) NOT NULL,
`qty` smallint(6) DEFAULT NULL,
PRIMARY KEY (`sno`,`pno`,`jno`),
CONSTRAINT `fk_jno` FOREIGN KEY (`jno`) REFERENCES `j` (`jno`),
CONSTRAINT `fk_pno` FOREIGN KEY (`pno`) REFERENCES `p` (`pno`),
CONSTRAINT `fk_sno` FOREIGN KEY (`sno`) REFERENCES `s` (`sno`)
);
表样例
请在这里给出上述表结构对应的表样例。例如
s
表:
p
表:
j
表:
spj
表:
输出样例:
请在这里给出输出样例。例如:
SELECT Distinct
pno
FROM
spj a
WHERE
pno not in(
SELECT
pno
FROM
spj b
WHERE
b.qty <= (
SELECT
max(qty)
FROM
spj
WHERE
pno='p6'
)
);
10-127 A4-3在订单表中查找特定国家且平均运费不小于10的信息
分数 20
全屏浏览题目
切换布局
作者 柯海丰
单位 浙大城市学院
查询订单表(orders)
中查找所在国家(ShipCountry)
为Belgium
,Switzerland
,且平均运费不小于10的的顾客及运费信息,结果显示为顾客编号(CustomerID)
和平均运费(avgFreight)
提示:请使用SELECT语句作答。
表结构:
列名 | 数据类型 | 长度 | 主码 | 说明 |
---|---|---|---|---|
OrderID | int | 11 | √ | 订单编号 |
CustomerID | varchar | 5 | 顾客编号 | |
EmployeeID | int | 11 | 员工编号 | |
OrderDate | datetime, | 订购日期 | ||
RequiredDate | datetime, | 预计到达日期 | ||
ShippedDate | datetime, | 发货日期 | ||
ShipVia | int | 11 | 运货商 | |
Freight | decimal | 10,4 | 运费 | |
ShipName | varchar | 40 | 货主姓名 | |
ShipAddress | varchar | 60 | 货主地址 | |
ShipCity | varchar | 15 | 所在城市 | |
ShipRegion | varchar | 15 | 区域 | |
ShipPostalCode | varchar | 10 | 邮政编码 | |
ShipCountry | varchar | 15 | 所在国家 |
表样例
请在这里给出上述表结构对应的表样例。例如
orders
表:
OrderID | CustomerID | EmployeeID | OrderDate | RequiredDate | ShippedDate | ShipVia | Freight | ShipName | ShipAddress | ShipCity | ShipRegion | ShipPostalCode | ShipCountry |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
10248 | VINET | 5 | 1996/7/4 00:00:00 | 1996/8/1 00:00:00 | 1996/7/16 00:00:00 | 3 | 32.3800 | Vins et alcools Chevalier | 59 rue de l-Abbaye | Reims | 51100 | France | |
10249 | TOMSP | 6 | 1996/7/5 00:00:00 | 1996/8/16 00:00:00 | 1996/7/10 00:00:00 | 1 | 11.6100 | Toms Spezialitten | Luisenstr. 48 | Mnster | 44087 | Germany | |
10250 | HANAR | 4 | 1996/7/8 00:00:00 | 1996/8/5 00:00:00 | 1996/7/12 00:00:00 | 2 | 65.8300 | Hanari Carnes | Rua do Pao, 67 | Rio de Janeiro | RJ | 05454-876 | Brazil |
10251 | VICTE | 3 | 1996/7/8 00:00:00 | 1996/8/5 00:00:00 | 1996/7/15 00:00:00 | 1 | 41.3400 | Victuailles en stock | 2, rue du Commerce | Lyon | 69004 | France | |
10252 | SUPRD | 4 | 1996/7/9 00:00:00 | 1996/8/6 00:00:00 | 1996/7/11 00:00:00 | 2 | 51.3000 | Suprmes dlices | Boulevard Tirou, 255 | Charleroi | B-6000 | Belgium | |
10253 | HANAR | 3 | 1996/7/10 00:00:00 | 1996/7/24 00:00:00 | 1996/7/16 00:00:00 | 2 | 58.1700 | Hanari Carnes | Rua do Pao, 67 | Rio de Janeiro | RJ | 05454-876 | Brazil |
10254 | CHOPS | 5 | 1996/7/11 00:00:00 | 1996/8/8 00:00:00 | 1996/7/23 00:00:00 | 2 | 22.9800 | Chop-suey Chinese | Hauptstr. 31 | Bern | 3012 | Switzerland | |
10255 | RICSU | 9 | 1996/7/12 00:00:00 | 1996/8/9 00:00:00 | 1996/7/15 00:00:00 | 3 | 148.3300 | Richter Supermarkt | Starenweg 5 | Genve | 1204 | Switzerland | |
10256 | WELLI | 3 | 1996/7/15 00:00:00 | 1996/8/12 00:00:00 | 1996/7/17 00:00:00 | 2 | 13.9700 | Wellington Importadora | Rua do Mercado, 12 | Resende | SP | 08737-363 | Brazil |
10257 | HILAA | 4 | 1996/7/16 00:00:00 | 1996/8/13 00:00:00 | 1996/7/22 00:00:00 | 3 | 81.9100 | HILARION-Abastos | Carrera 22 con Ave. Carlos Soublette #8-35 | San Cristbal | Tchira | 5022 | Venezuela |
输出样例:
|CustomerID|avgFreight|
|CHOPS|22.98000000|
|RICSU|148.33000000|
|SUPRD|51.30000000|
SELECT
CustomerID,AVG(Freight) AS avgFreight
FROM
orders
WHERE
ShipCountry IN ('Belgium','Switzerland')
GROUP BY
CustomerID
HAVING
AVG(Freight) >= 10;
10-128 A4-4查找产品表中平均订购数大于特定值的产品信息
分数 20
全屏浏览题目
切换布局
作者 柯海丰
单位 浙大城市学院
在产品表(products)
中查找平均订购数量大于15的产品信息,显示为:产品编号(ProductID)
,和总订货数量(重命名为sumUnitsOnOrder
)
提示:请使用SELECT语句作答。
表结构:
列名 | 数据类型 | 长度 | 主码 | 说明 |
---|---|---|---|---|
ProductID | int | 11 | √ | 产品编号 |
ProductName | varchar | 40 | 产品名称 | |
SupplierID | int | 11 | 供应商编号 | |
CategoryID | int | 11 | 种类编号 | |
QuantityPerUnit | varchar | 20 | 数量 | |
UnitPrice | decimal | 10,4 | 单价 | |
UnitsInStock | smallint | 2 | 库存数量 | |
UnitsOnOrder | smallint | 2 | 订购数量 | |
ReorderLevel | smallint | 2 | 再次订购量 | |
Discontinued | bit | 1 | 中止 |
表样例
products
表:
ProductID | ProductName | SupplierID | CategoryID | QuantityPerUnit | UnitPrice | UnitsInStock | UnitsOnOrder | ReorderLevel | Discontinued |
---|---|---|---|---|---|---|---|---|---|
1 | Chai | 1 | 1 | 10 boxes x 20 bags | 18 | 39 | 0 | 10 | |
2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 | 17 | 40 | 25 | |
3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 | 13 | 70 | 25 | |
4 | Chef Anton's Cajun Seasoning | 2 | 2 | 48 - 6 oz jars | 22 | 53 | 0 | 0 | |
5 | Chef Anton's Gumbo Mix | 2 | 2 | 36 boxes | 21.35 | 0 | 0 | 0 | |
6 | Grandma's Boysenberry Spread | 3 | 2 | 12 - 8 oz jars | 25 | 120 | 0 | 25 | |
7 | Uncle Bob's Organic Dried Pears | 3 | 7 | 12 - 1 lb pkgs. | 30 | 15 | 0 | 10 | |
8 | Northwoods Cranberry Sauce | 3 | 2 | 12 - 12 oz jars | 40 | 6 | 0 | 0 | |
9 | Mishi Kobe Niku | 4 | 6 | 18 - 500 g pkgs. | 97 | 29 | 0 | 0 | |
10 | Ikura | 4 | 8 | 12 - 200 ml jars | 31 | 31 | 0 | 0 |
输出样例:
ProductID | sumUnitsOnOrder |
---|---|
2 | 40 |
3 | 70 |
SELECT
ProductID,SUM(UnitsOnOrder) AS sumUnitsOnOrder
FROM
products
GROUP BY
ProductID
HAVING
AVG(UnitsOnOrder) > 15;
10-129 4-1 查询速度至少为160MHz的PC的制造商
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询速度至少为160
MHz的PC
的制造商。
提示:请使用SELECT语句作答。
表结构:
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)
);
表样例
product
表:
maker | model | type |
---|---|---|
D | 2003 | 便携式电脑 |
D | 3001 | 打印机 |
B | 3002 | 打印机 |
A | 1001 | 个人电脑 |
B | 1006 | 个人电脑 |
D | 1008 | 个人电脑 |
D | 1009 | 个人电脑 |
pc
表:
model | speed | ram | hd | cd | price |
---|---|---|---|---|---|
1001 | 133.00 | 16 | 1.60 | 6X | 1595 |
1006 | 200.00 | 32 | 3.10 | 8X | 2099 |
1008 | 180.00 | 32 | 2.00 | 8X | 3699 |
1009 | 200.00 | 32 | 2.50 | 8X | 2599 |
输出样例:
maker |
---|
B |
D |
SELECT DISTINCT
maker
FROM
product
WHERE
model IN(SELECT model FROM pc WHERE speed>=160)
AND
type='个人电脑'
10-130 4-2 查询价格最高的打印机型号
分数 10
全屏浏览题目
切换布局
作者 lhm
单位 河北农业大学
本题目要求编写SQL语句,
查询价格最高的打印机
型号。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE printer
( model CHAR(20) NOT NULL, --型号
color BIT, --是否彩色
type CHAR(10), --类型
price INT, --价钱
PRIMARY KEY(model),
FOREIGN KEY(model) REFERENCES product(model)
);
表样例
printer
表:
model | color | type | price |
---|---|---|---|
3001 | 1 | 喷墨 | 275 |
3002 | 1 | 喷墨 | 269 |
3003 | 0 | 激光 | 829 |
3004 | 0 | 激光 | 879 |
输出样例:
model |
---|
3004 |
SELECT DISTINCTs
model
FROM
printer
WHERE
price >= ALL(
SELECT price
FROM printer
)
10-131 4-3 查询速度低于任何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)
);
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)
);
表样例
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 |
laptop
表:
model | speed | ram | hd | screen | price |
---|---|---|---|---|---|
2001 | 100.00 | 20 | 1.10 | 9.50 | 1999 |
2002 | 117.00 | 12 | 0.75 | 11.30 | 2499 |
2004 | 133.00 | 16 | 1.10 | 11.20 | 3499 |
输出样例:
model |
---|
2001 |
2002 |
SELECT
model
FROM
laptop
WHERE
speed < all (
SELECT speed
FROM pc
)