gpt4 book ai didi

sql - 值是 a 和 b 的类型

转载 作者:行者123 更新时间:2023-12-02 01:11:21 25 4
gpt4 key购买 nike

对于给定的数据库

Product(maker, model, type)
PC(code, model, speed, ram, hd, cd, price)

问题是:在具有最低 RAM 的 PC 中找到同时生产具有最低 RAM 和最高速处理器的 PC 的打印机制造商。结果集:maker。

让我们拆分查询!

  • 找到同时生产 PC 的打印机制造商

SELECT DISTINCT maker from product Group By maker,type HAVING type IN('Printer','PC')

我认为这是错误的,因为 IN('Printer','PC') 就像 OR 不是 AND

  • RAM 最低的 PC

SELECT model,speed FROM pc WHERE ram=(SELECT MIN(ram) FROM pc) as lowestRam

  • 内存最低的 PC 中速度最快的处理器
WHERE
lowestRam.speed=(SELECT MAX(speed) FROM pc WHERE ram=(SELECT MIN(ram) FROM pc))

查询自身!

SELECT DISTINCT maker FROM
(SELECT DISTINCT model,speed FROM pc WHERE ram=(SELECT MIN(ram) FROM pc)) as lowestRam
INNER JOIN product
ON product.model=lowestRam.model
WHERE
lowestRam.speed=(SELECT max(speed) FROM pc WHERE ram=(SELECT MIN(ram) FROM pc))
Group By maker,type HAVING type IN( 'Printer' ,'PC')

不幸的是,当我在检查站点上提交查询时,它会产生 1 个额外的错误结果:(

问题来自Link .查询验证有 2 个步骤。第二步只显示用户和正确结果之间的差异:(

最佳答案

这应该可以解决您的问题:

select distinct maker from Product
where type = 'Printer' and maker in (select maker
from Product join PC on Product.model = PC.model
where ram = (select min(ram) from PC) and speed = (select max(speed) from PC
where ram = (select min(ram) from PC)))

关于sql - 值是 a 和 b 的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17089033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com