'左连接
select tbl1.* from tbl1,tbl2
WHERE tbl1.emp_id *= tbl2.emp_id
'右连接
select tbl1.* from tbl1,tbl2
WHERE tbl1.emp_id =* tbl2.emp_id
select tbl1.* from tbl1,tbl2
WHERE tbl1.emp_id *= tbl2.emp_id
'右连接
select tbl1.* from tbl1,tbl2
WHERE tbl1.emp_id =* tbl2.emp_id
SELECT *
FROM tbl1 LEFT OUTER JOIN
tbl2 ON tbl1.emp_id = tbl2.emp_id
2
selct * from tbl1,tbl2 where tbl1.emp_id=tbl2.emp_id
1.left join
select tbl1.* from tbl1 left join tbl2 on tbl1.emp_id = tbl2.emp_id
-- 不能用where
2.别名
select a.* from tbl1 a,tbl2 b where a.emp_id = b.emp_id
USE pubs
SELECT t.title_id, t.title, s.qty
FROM titles AS t, sales AS s
WHERE t.title_id *= s.title_id-- Join in FROM clause.
USE pubs
SELECT t.title_id, t.title, s.qty
FROM titles AS t LEFT OUTER JOIN sales AS s
ON t.title_id = s.title_id在下面的查询中,WHERE 子句也指定搜索条件:-- Join and search condition in WHERE clause.
USE pubs
SELECT t.title_id, t.title, s.qty
FROM titles AS t, sales AS s
WHERE t.title_id *= s.title_id
AND s.stor_id = '7066'stor_id = '7066' 条件在联接中取值。联接只从 sales 表中选择 stor_id 7066 的行,但由于这是外联接,因此空值在所有其它行中作为存储信息提供。此查询将返回 18 行。可以将联接条件移动到 FROM 子句,而 stor_id 条件留在 WHERE 子句中:USE pubs
SELECT t.title_id, t.title, s.qty
FROM titles AS t LEFT OUTER JOIN sales AS s
ON t.title_id = s.title_id
WHERE s.stor_id = '7066'由于执行左向外联接之后应用 stor_id = '7066' 限制条件,因此此查询只返回两行。这就消除外联接中 stor_id 为 NULL 值的所有行。若要通过 FROM 子句中的联接条件返回相同的信息,请将 stor_id = '7066' 条件指定为 FROM 子句中 ON join_criteria 部分,然后删除 WHERE 子句:USE pubs
SELECT t.title_id, t.title, s.qty
FROM titles AS t LEFT OUTER JOIN sales AS s
ON t.title_id = s.title_id
AND s.stor_id = '7066'