私はかなり単純なシナリオで立ち往生していますが、しばらくの間頭を悩ませた後でも、解決策を見つけることができませんでした...これが私が持っているものです.
次のデータを含む2つのテーブルがあります。
Trip (ID, Status)
30063 SUBMITTED
30066 SUBMITTED
30067 ASSIGNED
30068 SUBMITTED
と
AgentTripAssignment(TripId, AgentId, IsRejected)
30063 5 1
30063 2 0
30066 3 0
30066 4 0
30067 1 0
30067 2 0
30067 3 0
私がやりたいことは次のとおりです。
ステータスが SUBMITTED で、トリップのエントリが他のテーブルに存在する場合、AgentTripAssignment テーブルで IsRejected のカウント = 1 が 0 であるトリップ テーブルからトリップ ID を返します。ケース)と
ステータスが SUBMITTED でエントリが AgentTripAssignment テーブルに存在し、IsRejected = 1 のカウントが 2 番目のクエリでテーブルに少なくとも 1 回表示されているトリップ テーブルからトリップ ID を返します (この場合、エージェントが拒否されたため....30063)。
その他の注意点として、30067 の場合のようにステータスが ASSIGNED に変わると、3 人のエージェントが出張リクエストに割り当てられなくなるまで、出張のステータスは SUBMITTED のままになります。
どんな助けでも大歓迎です!