私は3つのテーブルを持っています:
Message
MsgID
、MsgText
、MsgDate
列を持つテーブル。MsgId
PKです。MessageSender
MsgId
、SenderId
、を持つテーブルSenderName
。MsgId
FKです。MessageTo
MsgId
、ToId
、を持つテーブルToName
。MsgId
FKです。
すべての Message には1 つの Senderがあります。ただし、多数の Recipientsを持つことができます。つまり、テーブル内のすべてのレコードに対して、Message
テーブルには 1 つのレコードがあり、MessageSender
テーブルには複数のレコードがありMessageTo
ます。
1 つのクエリまたは一度に、すべてのメッセージのすべての詳細を取得したいと考えています。たとえば、特定のメッセージの場合、送信者は誰で、全員が受信者です。
これどうやってするの?
MSSQL Server 2005 と Sybase 15 を使用しています。
注: ここでは、テーブルの関連する詳細のみを示しています。また、テーブル スキーマは長い間本番環境にあるため、変更できません。