作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找最便宜的 guitarRig
。吉他装备有部件(即 amplifier
、cabinet
、microphone
、guitarType
、guitarStringType
, patchCord
, effectsPedal
) 来自于产品。产品的购买价格由我的 PurchaseInformation
表决定。
这是我的表格:
Table Part:
name
guitarRig references GuitarRig(name)
product references Product(name)
Table Product:
name
part references Part(name)
barcodeNumber
Table PurchaseInformation:
price
product references Product(name)
purchasedFrom references Store(name)
到目前为止,我所拥有的是:
SELECT guitarRig
FROM Part
WHERE product =
(
SELECT name
FROM Product
WHERE name =
(
SELECT product, MIN(price) as minPrice
FROM PurchaseInformation
GROUP BY minPrice
)
);
我意识到这有很多问题(即我想说 name
等于两列,product
和 minPrice
),但是我终其一生都无法弄清楚如何准确地获得我正在寻找的东西。
最佳答案
我没有测试过这个,所以可能有一些错别字。我的假设是,最便宜的 guitarRig 是由该装备的所有零件价格相加决定的。
SELECT p.guitarRig
, sum(r.price) as totPrice
FROM Part p
, Product r
, PurchaseInformation i
WHERE p.product = r.name
AND p.name = r.part
AND r.name = i.product
GROUP BY p.guitarRig
ORDER BY totPrice desc
LIMIT 1
关于MySQL:如何将多个表关联在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22692457/
我是一名优秀的程序员,十分优秀!