开发者

If one table (A) relates to another (B), which relates to another (C), can I write a query to get table out of A from a join between B and C?

I have a 3-table schema. Two of the tables (Trade/Portfolio) have a 1:1 relationship, so the FK on one of these tables has the unique constraint.

The table, as explained above, with the FK (which is Portfolio) relates to a third table. As this third table (Price) is displaying historical information for a Portfolio (there can be many prices for a portfolio over a time-period), there's a bog-standard 1:m relationship.

However, I need to get the various prices for a portfolio. That's easy with a query which works on the portfolio ID. However, is this a feasible way to get the price of a single trade? Is there any limitation in the design that w开发者_Python百科ould prevent this?

Apologies for the long title, but could not find a better way to explain the issue!

Thanks


By your description I guess this is your data model. FK TradeID is a unique in Portfolio.

If one table (A) relates to another (B), which relates to another (C), can I write a query to get table out of A from a join between B and C?

And you wonder if it is possible to get the rows from Price related to Trade. Here is a query that will give you all rows from Price where TradeID is 1.

select Price.*
from Portfolio
  inner join Price
    on Portfolio.PortfolioID = Price.PortfolioID
where Portfolio.TradeID = 1    

I see nothing in this design that will prevent you from fetching the rows from Price given a TradeID.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜