使用3个数据库表进行查询

时间:2014-04-14 07:27:21

标签: sql oracle10g

我正在使用oracle 10g数据库进行查询。 我遇到了一个问题。如下:

我说3个表就是table1,table2,table3。

现在在table1中假设我有2列myid,id。

在table2中假设我有2列table2id,table2name。

在表3中假设我有2列table3id,table3name。

现在我想从具有特定myid的表中获取myid,id,name,比如X.

示例: 假设表1有3个条目:

1 11
2 11
3 13

表2如下:

11 John
12 Michael

表3如下:

13 Steve

然后这里的回答是:

1 11 John
2 11 John
3 13 Steve

怎么做?

2 个答案:

答案 0 :(得分:1)

尝试贝娄:

SELECT table1.myid, table1.id,table2.name as name

FROM table1

INNER JOIN table2 ON table2.id = table1.id

UNION 

SELECT table1.myid, table1.id,table3.name as name

FROM table1

INNER JOIN table3 ON table3.id = table1.id;

答案 1 :(得分:0)

加入三个表,然后限制搜索。检查oracle的网站:http://docs.oracle.com/javadb/10.8.1.2/ref/rrefsqlj18922.html