Oracle – Usando INNER JOIN
INNER JOIN
Usado quando ser quer trazer resultados que existam em todas as tabelas relacionadas, se não houver registros em todas tabelas não traz resultado nenhum.
CREATE TABLE table_one ( col_one NUMBER, col_two NUMBER ); CREATE TABLE table_two ( col_one NUMBER, col_two NUMBER ); INSERT INTO table_one VALUES ( 1, 1); INSERT INTO table_one VALUES ( 3, 5); INSERT INTO table_one VALUES ( 5, 9); INSERT INTO table_two VALUES ( 4, 5); INSERT INTO table_two VALUES ( 6, 3); INSERT INTO table_two VALUES ( 5, 5); SELECT * FROM table_one t1 inner join table_two t2 ON t1.col_one = t2.col_two; COL_ONE COL_TWO COL_ONE COL_TWO ---------- ---------- ---------- ---------- 5 9 4 5 3 5 6 3 5 9 5 5 SELECT * FROM table_one t1 inner join table_two t2 using (col_two); -- col_two deve ser o mesmo nas 2 tabelas para usar desta forma. COL_TWO COL_ONE COL_ONE ---------- ---------- ---------- 5 3 4 5 3 5
Referência psoug