2013-07-17 90 views
0

列值我有两个表:从另一个表获取PostgreSQL的

用户和订单

的订单,属于用户,在某种程度上Order表有一个叫user_id列。因此,例如,为了表中的行会看起来像:

id: 4 
description: "pair of shoes" 
price: 18.40 
user_id: 1 

和用户的行会看起来像:

id: 1 
email: "[email protected]" 
name: "John" 

我怎么会去,如果我想获得的所有订单,但而不是获取用户ID,获取电子邮件?

+0

正确回答你的问题是使用JOIN,但你已经在你的问题中标记了你想使用的那个。你有什么尝试?你有没有想过的东西? –

回答

2

一个简单JOIN会做的伎俩

SELECT o.id, 
     o.description, 
     o.price, 
     u.email 
    FROM "order" o JOIN "user" u 
    ON o.user_id = u.id 

输出示例:

 
| ID | DESCRIPTION | PRICE |    EMAIL | 
-------------------------------------------------- 
| 4 | pair of shoes | 18.4 | [email protected] | 

这里是SQLFiddle演示

进一步阅读A Visual Explanation of SQL Joins

+0

@HommerSmith有帮助吗? – peterm

相关问题