PTA - 数据库合集55

 目录

10-134 4-6 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商

10-135 5-1 查询销售便携式电脑但不销售PC的厂商

10-138 5-4 查询至少生产三种不同速度PC的厂商


10-134 4-6 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商

分数 10

全屏浏览题目

切换布局

作者 lhm

单位 河北农业大学

本题目要求编写SQL语句,
查询在具有最小内存容量的所有PC中具有最快处理器的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表:

makermodeltype
D2003便携式电脑
D3001打印机
A1001个人电脑
A1002个人电脑
A1003个人电脑
B1004个人电脑

pc表:

modelspeedramhdcdprice
1001133.00161.606X1595
1002120.00161.606X1399
1003166.00242.506X1899
1004166.00322.508X1999

输出样例:

maker
A

SELECT 
    maker
FROM 
    pc,product
WHERE 
    pc.model = product.model
AND 
    ram = (SELECT min(ram) FROM pc)
AND 
    speed = (SELECT max(speed) FROM pc WHERE ram = (SELECT min(ram) FROM pc));


10-135 5-1 查询销售便携式电脑但不销售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 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) 
);

表样例

product表:

makermodeltype
D2001便携式电脑
D2002便携式电脑
E2004便携式电脑
D3001打印机
B3002打印机
A1001个人电脑
B1004个人电脑
D1008个人电脑

pc表:

modelspeedramhdcdprice
1001133.00161.606X1595
1004166.00322.508X1999
1008180.00322.008X3699

laptop表:

modelspeedramhdscreenprice
2001100.00201.109.501999
2002117.00120.7511.302499
2004133.00161.1011.203499

输出样例:

maker
E
SELECT DISTINCT 
    maker
FROM 
    product
WHERE 
    TYPE='便携式电脑' AND maker NOT IN (
SELECT
    maker
FROM 
    product
WHERE 
    TYPE='个人电脑'
)

10-138 5-4 查询至少生产三种不同速度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 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表:

makermodeltype
D2001便携式电脑
D2002便携式电脑
E2004便携式电脑
D3001打印机
B3002打印机
A1001个人电脑
A1002个人电脑
A1003个人电脑
D1008个人电脑

pc表:

modelspeedramhdcdprice
1001133.00161.606X1595
1002120.00161.606X1399
1003166.00322.508X1999
1008180.00322.008X3699

输出样例:

maker
A
SELECT
    maker
FROM 
    pc
LEFT JOIN 
    product 
ON 
    product.`modcel`=pc.`model`
GROUP BY 
    maker
HAVING 
    COUNT(DISTINCT speed)>=3

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小羊 : )

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值