gpt4 book ai didi

php - MySQL 子查询在一张表中两次使用相同的 id 字段进行描述

转载 作者:行者123 更新时间:2023-11-29 14:52:17 25 4
gpt4 key购买 nike

选择 move.idItem, item.description,
(
SELECT location.location_name as movingFrom FROM move, location
WHERE move.idlocationFrom = 位置.idlocation
) AS 移动自,
(
SELECT location.location_name as movingTo FROM move, location
WHERE move.idlocationTo = location.idlocation
) AS 移至
来自移动、项目
WHERE move.idItem = item.idItem

我尝试使用上述查询获取移至和移自位置的名称,这会在 PHPMyAdmin 中产生“#1242 - 子查询返回超过 1 行”错误。

描述项目移动存储在名为“移动”的表中。可以将项目从一个位置移动到另一位置,存储位置 ID(存储在“位置”表中的位置名称)和存储在“项目”表中的项目名称。 movingTo 和 movingFrom 将存储位置表中的 id。

有人可以帮我解决这个问题吗?提前致谢

最佳答案

我认为您可能想使用联接而不是子查询。像这样的东西:

SELECT move.idItem, 
item.description,
location1.location_name movedFrom,
location2.location_name as movedTo
FROM move
INNER JOIN location location1 ON move.idlocationFrom = locatio1n.idlocation
INNER JOIN location location2 ON move.idlocationTo = location2.idlocation
INNER JOIN item ON move.idItem = item.idItem

关于php - MySQL 子查询在一张表中两次使用相同的 id 字段进行描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5494541/

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