gpt4 book ai didi

mysql - 子查询以查找已售产品的第三高成本

转载 作者:行者123 更新时间:2023-11-30 22:08:14 25 4
gpt4 key购买 nike

我一直试图找到所售产品的第三高成本。来自表 tblproducts。我正在使用 mysql server 5.6。

我使用了以下查询:

select name
from tblproducts
where cost IN
(select distinct top 3 cost
from tblproducts
order by cost desc);

但是当我运行查询时它显示以下错误:

错误 1064 (42000):您的 SQL 语法有误;检查手册对应于您的 MySQL 服务器版本,以便在 '3 cos 附近使用正确的语法吨来自 tbbproductsorder by cost dec)' 在第 4 行

......................有人好心帮我改正这个错误的语法。

谢谢。

最佳答案

SELECT t1.name
FROM tblproducts t1
WHERE (3) = ( SELECT COUNT(t2.cost)
FROM tblproducts t2
WHERE t2.cost >= t1.cost
)

此处演示:

SQLFiddle

更新:

只要 tblproducts 中的产品不可能具有重复成本,上述查询就可以正常工作。如果成本有重复的机会,那么我们可以修改查询如下:

SELECT t1.name
FROM tblproducts t1
WHERE (3) = ( SELECT COUNT(t2.cost)
FROM (SELECT DISTINCT cost FROM tblproducts) t2
WHERE t2.cost >= t1.cost
)

关于mysql - 子查询以查找已售产品的第三高成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40944911/

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