【发布时间】:2017-02-23 03:30:46
【问题描述】:
我有三张桌子Table1 (Name, Roll), B( ID, School) & C (ID, State)
Roll in Table 1 是外键
如何将Table1(Roll) 引用到B(ID) 或C(ID)?
条件是Roll > 500引用B,Roll <= 500引用C
如果允许我们修改Table1,创建多个引用的通用方法是什么?即。根据条件链接任何表(A、B、..、X、Y、...)的 Table1。
在 SQL 中甚至有可能吗?
添加编辑:我不需要加入它,我只需要引用它。
【问题讨论】:
-
你不能。一个特定的 FK 是一个且只有一个表。但是,您可以实现复杂的复合外键
-
@Drew:如何实现复合外键?
-
我想我写了 2 或 3 个在此搜索中看到的四个 Here ... 我将它们标记为这样。也许它们会很有用。他们当然可以治愈失眠。
-
还有mysql的概念条件连接 ...它们是用左连接实现的
-
能否详细说明?
标签: mysql sql reference foreign-keys