MySQL:在一个查询中获取不同表中的值?

时间:2014-04-04 11:49:46

标签: mysql sql

我有一个表,其中3列对应于另一个表中的ID,我需要的是在一个查询中获取另一个表中该ID的实际值,所有这些都在一个查询中。

我在找出SQL以获得我想要的结果时遇到了麻烦。我已尝试过子查询并加入,但似乎无法弄明白。

这是表格:

表A

+----------+-------------+
| Field    | Type        |
+----------+-------------+
| id       | int(3)      |
| name     | text        |
| item1    | int(3)      |
| item2    | int(3)      |
| item3    | int(3)      |
+----------+-------------+

表B

+----------+-------------+
| Field    | Type        |
+----------+-------------+
| id       | int(3)      |
| name     | text        |
| url      | text        |
+----------+-------------+

在表A中,字段item1,item2和item3是表B中的ID。

我需要查询表A的查询结果,并在一个查询中获取item1,item2和item3的实际值,而不是ID号。

我希望有人能指出我正确的方向。

顺便说一句,这将用于PHP应用程序,不知道这些信息是否相关。

提前致谢!

1 个答案:

答案 0 :(得分:1)

这是一个加入。

Select * from TableA a, TableB b1, TableB b2, TableB b3
where a.item1 = b1.id
and a.item2 = b2.id
and a.item3 = b3.id