浏览 186 次
|
该帖已经被评为新手帖
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-06-23
运用自连接同子查询之间有什么区别?请大家给点意见
SELECT R1.readerid,R1.readername,R1.unit,R1.bookcount
SELECT readerid,readername,unit,bookcount 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-06-23
那要看数据库操作系统的的实现,在各个数据库其中实现方式略有不同,最好是看一下其执行计划~~~~~~
|
|
| 返回顶楼 | |
|
最后更新时间:2008-06-24
方式二要求下面这个子查询的检索结果最多只有一条记录
SELECT bookcount --使用子查询 FROM ReaderInfo WHERE readerid=9704 方式一没有这个限制 不过,当这个子查询的结果有多条结果的时候 方式一得到的是个迪卡尔积 这种情况下,为了避免因为迪卡尔积而得到重复纪录,可以用exists方式
SELECT R1.readerid, R1.readername, R1.unit, R1.bookcount
FROM ReaderInfo A
WHERE exists
(
select 1
from ReaderInfo R2
where R2.readerid=9704
and R2.bookcount < R1.bookcount
)
ORDER BY R1.bookcount
|
|
| 返回顶楼 | |
|
最后更新时间:2008-06-25
谢谢 armorking martri的指教
|
|
| 返回顶楼 | |





