【发布时间】:2011-02-18 01:24:53
【问题描述】:
我有这个 MySQL 数据库方案:
users (id, login)
coins (userid, value, curr)
我需要编写返回结果的选择:登录名和他拥有的最大硬币以及该硬币的货币。
我尝试过类似的方法:
SELECT login,
(
SELECT value, curr
FROM coins
WHERE coins.userid = users.id
ORDER BY value DESC
LIMIT 1
) AS ROW(value, curr)
FROM users
它不起作用...我会收到错误消息,即“操作数应包含 1 列”。 我期待它,但我不知道怎么做。
所以我猜:有没有办法将多列单行(行)从子查询返回到父查询?
(是的,我可以使用两个子查询,但它不起作用。)
感谢您的宝贵时间。
【问题讨论】:
-
如果有平局(一个用户有2个相同价值的硬币)怎么办?
-
感谢您的回答。它帮助了我。我的意思是没有关系的情况。