如何引用SELECT查询引用的字段?

时间:2014-10-06 10:26:38

标签: mysql sql select join inner-join

我有2个表,Ongoing_PortfolioOngoing_FeesOngoing fees包含foreign key Ongoing-Portfolio。以下是表格

enter image description here enter image description here

请查看以下代码

SELECT Ongoing_Portfolio.*, 
Ongoing_Fees.Ongoing_Net_Income FROM Ongoing_Portfolio 
INNER JOIN Ongoing_Fees ON Ongoing_Fees.idPortfolio = Ongoing_Portfolio.idPortfolio 
WHERE Ongoing_Portfolio.idPortfolio = 1 
AND 
Ongoing_Portfolio.idOngoing_Portfolio = ?

你能在最后一行看到?标记吗?我想要做的是引用当前正在查询的idOngoing_Portfolio Ongoing_Fees字段。更详细地说,我需要以下内容。

 AND 
    Ongoing_Portfolio.idOngoing_Portfolio = idOngoing_Fees of the Ongoing_Fees table where the query is currently accessing

我怎样才能在mysql中执行此操作?

1 个答案:

答案 0 :(得分:2)

您问题的直接答案是按照您的描述将列放入:

SELECT op.*, 
Ongoing_Fees.Ongoing_Net_Income
FROM Ongoing_Portfolio op INNER JOIN
     Ongoing_Fees onf
     ON onf.idPortfolio = op.idPortfolio 
WHERE op.idPortfolio = 1 AND 
      op.idOngoing_Portfolio = onf.idOngoing_Fees;

这样做你想要的吗?如果没有,您可以考虑提出另一个问题。放置实际的create table语句比两个表的图片更有用。样本数据和期望的结果对于您理解您想要做什么以及将这些信息传达给其他人来说是一个很大的帮助。