0

テーブル間の関係は次のとおりです。この1つのジョブには0-Mサブジョブが含まれる可能性があります=1:M0-Mサブジョブには0-Mコントラクトが含まれる可能性があります=M:M私が設計したテーブルは

ジョブ:JobID

サブジョブ:サブジョブID

契約:ContractID

Subjob_Contract:SubjobID、ContractID

私が直面している問題は、ジョブと契約を表示したいときです.....ジョブにサブジョブがない場合、どのようにジョブとのリンクを契約できますか

4

1 に答える 1

0

テーブル構造からジョブとサブジョブの区別をなくします。SubJob テーブルを他のジョブへのリンクとして使用すると、Job_Contract 参照しかありません。

サブジョブには、すべてのジョブとそのサブジョブの間のリンクが含まれます。

サブジョブ:
 parent_job_id -- 親ジョブへの参照
 job_id -- 以前は SubJobId

例:

Select * from subjobs where subjobs.parent_job = {jobid};

実際のジョブ ID である「subjobid」を含むすべてのサブジョブのセットを返します。

このようにして、任意のジョブから契約を参照できます。

于 2012-10-31T03:27:18.157 に答える