一、内连接
返回符合条件的所有记录
SELECT * FROM TABLEA A,TABLEB B
WHERE A.B_ID = B.B_ID;
或者
SELECT * FROM TABLEA JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
SELECT * FROM TABLEA INNER JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
二、外连接
左外连接:除了返回满足条件的记录,还将左表中其余的数据记录返回
SELECT * FROM TABLEA A,TABLEB B
WHERE A.B_ID = B.B_ID(+);
或者
SELECT * FROM TABLEA LEFT OUTER JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
当然还由RIGHT OUTER JOIN...ON右外连接和FULL OUTER JOIN...ON全外连接(附加返回两表都不满足条件的记录)
三、自连接
对同一张表的自身查询,因此需要引用表别名
SELECT * FROM TABLE A,TABLE B
WHERE A.ID = B.DEMP_ID;
四、交叉连接
返回笛卡尔乘积
SELECT * FROM TABLEA CROSS JOIN TABLEB;
返回符合条件的所有记录
SELECT * FROM TABLEA A,TABLEB B
WHERE A.B_ID = B.B_ID;
或者
SELECT * FROM TABLEA JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
SELECT * FROM TABLEA INNER JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
二、外连接
左外连接:除了返回满足条件的记录,还将左表中其余的数据记录返回
SELECT * FROM TABLEA A,TABLEB B
WHERE A.B_ID = B.B_ID(+);
或者
SELECT * FROM TABLEA LEFT OUTER JOIN TABLEB ON TABLEA.B_ID=TABLEB.B_ID;
当然还由RIGHT OUTER JOIN...ON右外连接和FULL OUTER JOIN...ON全外连接(附加返回两表都不满足条件的记录)
三、自连接
对同一张表的自身查询,因此需要引用表别名
SELECT * FROM TABLE A,TABLE B
WHERE A.ID = B.DEMP_ID;
四、交叉连接
返回笛卡尔乘积
SELECT * FROM TABLEA CROSS JOIN TABLEB;