数据库之join用法
- JOIN: 如果表中有至少一个匹配,则返回行
- LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
- RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
- FULL JOIN: 只要其中一个表中存在匹配,就返回行
join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。
ELECT a.c_port_code,b.c_ass_code
FROM T_D_AC_TRADE_IVT a
INNER JOIN T_P_AB_PORT b
ON a.c_port_code = b.c_port_code
ORDER BY b.c_ass_code
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
SELECT a.c_port_code, b.c_ass_code
FROM T_D_AC_TRADE_IVT a
LEFT JOIN T_P_AB_PORT b
ON a.c_port_code = b.c_port_code
ORDER BY b.c_ass_code
RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。
SELECT a.c_port_code, b.c_ass_code
FROM T_D_AC_TRADE_IVT a
RIGHT JOIN T_P_AB_PORT b
ON a.c_port_code = b.c_port_code
ORDER BY b.c_ass_code
FULL JOIN
只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。
SELECT a.c_port_code, b.c_ass_code
FROM T_D_AC_TRADE_IVT a
FULL JOIN T_P_AB_PORT b
ON a.c_port_code = b.c_port_code
ORDER BY b.c_ass_code