我有两张桌子:
用户和订单
一个订单属于一个用户,在某种程度上,订单表有一个名为 user_id 的列。因此,例如,订单表中的一行如下所示:
id: 4
description: "pair of shoes"
price: 18.40
user_id: 1
用户行看起来像:
id: 1
email: "myemail@gmail.com"
name: "John"
如果我想获取所有订单,但不是获取用户 ID,而是获取电子邮件,我该怎么办?
我有两张桌子:
用户和订单
一个订单属于一个用户,在某种程度上,订单表有一个名为 user_id 的列。因此,例如,订单表中的一行如下所示:
id: 4
description: "pair of shoes"
price: 18.40
user_id: 1
用户行看起来像:
id: 1
email: "myemail@gmail.com"
name: "John"
如果我想获取所有订单,但不是获取用户 ID,而是获取电子邮件,我该怎么办?
一个简单JOIN
的就可以了
SELECT o.id,
o.description,
o.price,
u.email
FROM "order" o JOIN "user" u
ON o.user_id = u.id
样本输出:
| 身份证 | 说明 | 价格 | 电子邮件 | -------------------------------------------------- | 4 | 一双鞋| 18.4 | 我的邮箱@gmail.com |
这是SQLFiddle演示
进一步阅读SQL 连接的可视化解释