sql - 如何在 SQL 数据库中创建记录之间的关系?

标签 sql database relationship

假设我们有一个“People”表:

ID  Name      Surname   Age
1   Thorvald  Benjamin  32
2   Addison   Impi      40

我们有一个“兼容性”表:

Person1_ID  Compatibility  Person2_ID
1           89             2

如何在 Person1_ID 的值和 People 表中的记录之间创建关系? Person2_ID 中也有同样的事情吗?

当您从数据库中获取数据时,编写 SQL 查询的好方法是什么,以便您可以获得有关 Person1、Person2 及其兼容性的信息?

我对数据库了解不多,这可能是一个非常简单的问题。请耐心等待。

最佳答案

类似的事情:

SELECT
    A.Person1_ID, A.Compatibility, A.Person2_ID,
    B.Name AS Person1_name, B.Surname AS Person1_surname, B.Age AS Person1_age,
    C.Name AS Person2_name, C.Surname AS Person2_surname, C.Age AS Person2_age
FROM table_compatibility as A
LEFT JOIN table_people AS B
    ON A.person1_ID = B.ID
LEFT JOIN table_people AS C
    ON A.person2_ID = C.ID
WHERE A.Person1_ID = 1

关于sql - 如何在 SQL 数据库中创建记录之间的关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16104900/

相关文章:

Python使用另一个模块从mysql服务器获取数据

python - 声明式 SQLAlchemy 中的具体化路径关系

python - Flask 管理员单击时编辑子对象

sql - 使用 google bigquery 构建直方图

mysql - 如果有两个客户,请选择订购产品数量最多的客户

mysql - 使用两个新列制作表格,将另一列按偶数或奇数进行分类,并对类别中的所有偶数和奇数进行求和

MySQL死锁问题

asp.net-mvc - 自动更新 Entity Framework 模型

relationship - 我可以在 CardDAV 服务器上创建 vCard 之间的关系吗?

mysql - 如何构造 SQL 查询以查找作为两个特定其他对象的父对象的对象?