+ -
当前位置:首页 → 问答吧 → 两张表求差

两张表求差

时间:2011-12-20

来源:互联网

其中第一张存储有所有的房间号和床位号(这里假设为两间房,每间四张床),第二张存储已经使用的房间。现在要求剩余的床位的房间编号和床位号。表如图。

select Room_Id,Bed_Id 
from BedAll

where (select BedAll.Room_Id,BedAll.Bed_Id 
from BedAll,Patient 
where BedAll.Room_Id=Patient.Patient_Room and BedAll.Bed_Id=Patient.Patient_Bed)

尝试了很久我都没解决,求高手指教,谢谢了

作者: wxy532   发布时间: 2011-12-20

SQL code

select * from 第一张表 a where not exists(select 1 from 第二张表 where Room_Id=a.Room_Id and Bed_Id=a.Bed_Id)

作者: pengxuan   发布时间: 2011-12-20

SELECT *
FROM bedall
EXCEPT
SELECT *
FROM Patient

作者: wufeng4552   发布时间: 2011-12-20

引用 2 楼 wufeng4552 的回复:
SELECT *
FROM bedall
EXCEPT
SELECT *
FROM Patient


++

作者: ju523756055   发布时间: 2011-12-20

引用 2 楼 wufeng4552 的回复:

SELECT *
FROM bedall
EXCEPT
SELECT *
FROM Patient

++

作者: gll062   发布时间: 2011-12-20

SQL code
select * from bedall where checksum(*) not in (select checksum(*)  from patient)  

作者: fredrickhu   发布时间: 2011-12-20