次のクエリを実行しようとしていますが、結果を 1 つだけに制限する方法がわかりません。以下のクエリでは、clientcontactid 21901 が機能するクライアントには 2 つのアドレスがあり、2 つの結果が返されることを意味します。
クエリ:
select cc.contactpersonid,
cc.clientcontactid,
ad.city,
ad.addressid
from SavedList sl
inner join ClientContacts cc on cc.ContactPersonId = sl.ObjectId
inner join Clients c on c.ClientID = cc.ClientId
inner join Address ad on c.ClientID = ad.ObjectId
where sl.SavedListId = 2117
結果:
contactpersonid clientcontactid city addressid
87934 21901 145186
87934 21901 London 1130705
89778 17275 Leeds 145368
クライアントの連絡先21901について、これらの結果の 1 つを返す必要があります。都市が含まれる結果が優先されます。select top (1)を試してみましたが、結合によって複数のレコードが強制的に戻されていると思います。1つの結果のみを返す方法、およびそれを制御する方法についてのヘルプをいただければ幸いです!
ありがとう