作者adrianshum (Alien)
看板Database
标题Re: 请问 Join 语法的必要性
时间Wed Sep 17 17:31:59 2008
※ 引述《arrack (艾瑞克)》之铭言:
: 1.特殊用途,例如选取主KEY跟主KEY下一笔以外的资料
: SELECT A.id FROM news AS A LEFT JOIN
: (SELECT id FROM news WHERE id >=
: (select IFNULL(max(id),10) from news where id <10 )
: ORDER BY id LIMIT 3) AS B
: ON A.id = B.id WHERE B.id IS NULL
: (过滤id=10跟下一笔)
: 在我的逻辑里,就不知道Where该怎麽做了
重点是差 left join 而已, 不少
DBMS 都有提供 where-clause 做 left/right join:
select A.id
from news as A,
(select id from news where id >=......) as B
where
A.id(+)=B.id
and B.id = null
这样应该可以吧
应该没有用 where clause 表达不出来的
join clause, 不过 left/right/outer join
则是看各家 syntax, 没有标准.
join clause 则是标准.
不过, 个人是大力倾向用 join clause,
最重点是可读性和标准性. 尤其是用 where
clause, 会把 join 的 criteria 和其他
filtering criteria 混在一起, 可以变得很
难理解.
alien
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 202.155.236.82
1F:推 arrack:受教了^^ 09/18 05:16
2F:→ adrianshum:言重了 >_< 09/18 14:26