Чтобы выбрать партии для Balances.PartyID
, вам нужно будет join
на Balances.PartyID = Parties.PartyID
. Чтобы выбрать партию для эмитента, вам нужно будет join
на Securities.IssuerID = Parties.PartyID
. Лучше всего объявлять псевдонимы таблиц в своем выражении select
, чтобы вы знали, для чего используется таблица:
Select
Balances.PartyName
, Balances.SecurityName
, Balances.BalanceEUR
, Parties.PartyName
, Parties.PartyGeneralID
, Parties.PartyAddress
, Securities.IssuerID
, Securities.MaturityDate
, issuer.PartyName as issuerName
, issuer.PartyAddress as issuerAddress
, issuer.PartyGeneralID as issuerGeneralId
from Balances
LEFT JOIN Parties party on Parties.PartyID=Balances.PartyID
LEFT JOIN Securities s on Balances.SecurityName = s.securityName -- ? Really?!
LEFT JOIN Parties issuer on s.IssuerID = issuer.PartyID
Я предположил, что вы получаете от Balances
до Securities
, используя SecurityName
. Это кажется мне ужасным, поэтому, если вы знаете лучше, отредактируйте свой пост и покажите нам, как точно Balanaces и Securities связаны друг с другом.