gpt4 book ai didi

mysql: 表别名不存在

转载 作者:可可西里 更新时间:2023-11-01 08:00:03 24 4
gpt4 key购买 nike

所以我的数据库中有一个表(我称之为测试)。该表名为 Items,有一个名为 itemID 的 int 列和一个名为 currently 的 decimal(8, 2) 列。它们分别代表一个项目的唯一 ID 和一个项目的当前出价。当前列可以为 NULL,因为可能还没有对项目出价。

我的目标是获取当前出价最高且至少有一个出价的商品的 itemID。我有一个 mysql 查询,如下所示:

select itemID
from (select itemID from Items where numBids > 0) as b
where currently = (select max(currently) from b);

当我在 mysql 中执行此操作时,我收到一条错误消息:

ERROR 1146 (42S02): Table 'Test.b' doesn't exist

谁能解释一下这是怎么回事?我有一段时间没有使用 mysql,所以我生疏了。为了完成这样的事情,我是否必须将 Items 与自身连接起来?任何帮助将不胜感激。

最佳答案

最后一个子查询没有看到别名“b”。 Insted 使用那个复杂的查询使用

SELECT itemID
FROM Items
WHERE numBids > 0
ORDER BY currently DESC
LIMIT 1

处理多个项目的当前出价最高的情况:

SELECT itemID
FROM Items
WHERE numBids > 0
AND currently =
( SELECT MAX(currently)
FROM Items
WHERE numBids > 0
)

关于mysql: 表别名不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7870289/

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