$SQL->query('SELECT `p`.`name` AS `name`,
(SELECT `k`.`value` FROM `player_storage` k LEFT JOIN `players` p ON `k`.`player_id` = `p`.`id` WHERE `k`.`key` = 11000) AS value
FROM `player_storage` k, `players` p
WHERE `k`.`player_id` = `p`.`id`
GROUP BY `name`
ORDER BY CAST(`value` AS SIGNED)
DESC LIMIT 0 , 30
;')
错误:子查询返回多于1行
既然我对mysql一无所知,有人可以帮帮我吗?
我试图从同一列中取2个值 key
= 11000 key
= 11001
2 回答
由于错误清楚地表明您的子查询在主查询中针对单行返回2行,因此如何才能获得错误 .
您可以通过以下查询获得结果 -
注意:不确定您是否需要相同的结果或其他内容,但它可以帮助您解决问题 .
试试这个