0

表之间的关系遵循这 1 个工作可能包含 0-M 子工作 = 1 :M 0-M 子工作可能有 0-M 合同 = M :M 我设计的表是

工作:工作ID

子作业:子作业ID

合同:合同ID

Subjob_Contract:SubjobID,ContractID

我面临的问题是当我们想要查看工作和合同时.....如果工作没有子工作,那么合同如何与工作联系起来

4

1 回答 1

0

我会从表结构中消除作业和 SubJob 之间的区别。您可以使用 SubJob 表作为指向其他 Jobs 的链接,然后您只有一个 Job_Contract 引用。

然后,SubJob 将包含所有 Jobs 和它们的 SubJobs 之间的链接。

子工作:
 parent_job_id -- 对父作业的引用
 job_id -- 以前,您的 SubJobId

例子:

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

返回一组包含实际上是作业 ID 的“subjobid”的所有子作业。

这样您就可以参考任何工作的合同。

于 2012-10-31T03:27:18.157 回答