使用另一个表加入子查询

时间:2018-01-07 08:16:00

标签: mysql sql join subquery

在我的MySQL数据库中,我有两个表:((MainActivity)context).yourMethodeName(result) investmentscurrency_id投资)和date(包含名称等数据)。

我想为投资表格中的每种货币选择最低currencies,然后将此结果与date一起加入。

我想象的查询可能会更清楚:

currencies

但是,我得到的只是子查询结果,并且没有加入任何来自货币表的内容。我做错了什么?

2 个答案:

答案 0 :(得分:2)

SELECT子句中,您忘记了currencies列'值。 在第一行添加currencies.*

SELECT T.currency_id, T.mindate, currencies.*
FROM (
    SELECT * , MIN( DATE ) AS mindate
    FROM investments
    GROUP BY investments.currency_id
    ORDER BY mindate ASC
) AS T
JOIN currencies ON T.currency_id = 
currencies.currency_id

答案 1 :(得分:1)

然而您忘记从货币中选择列[s],但它仍然可能无法提供所需的输出,因为在子查询中您选择所有列并仅按{{1 }}。查询可能无法运行或由未添加组功能的所有其余列分组,因此您可能会得到意外的结果。所以,我想建议采用以下方式

currency_id