可以引用另一个表作为表中的一行吗?

时间:2019-02-14 12:58:34

标签: mysql sql database-design

我有一个名为付款的表,另外两个名为发票,订阅,许可证。

是否可以在“付款”中添加对这些表的引用?会产生此

的东西
result => CREATE TABLE Payments (
      Invoices table,
      Subs table
    )

我在想用其他语言将对象放入数组的方式。

编辑:我正在使用MySQL。基本上,我想使用一个名为Payments的类将它们映射到Java,并且想知道是否可以在db服务器端执行此操作。否则,我将不得不弄清楚如何在Java类中映射所有它们。我现在在想哪个可能会更容易

1 个答案:

答案 0 :(得分:0)

在MySQL中,几乎可以在任何可以使用表达式的地方进行子查询。但是它必须返回一个值。

FROMJOIN之后,您可以使用作为子查询的“派生表”。

使用VIEW可以更好地处理您键入的内容:

CREATE VIEW Results AS
    SELECT i.*, s.*
        FROM Invoices AS i
        JOIN Subs AS s  ON i.foo = s.foo

(其中foo是用于将这两个表关联在一起的列。)