关联表取数据,有多余数据,求正确语句
/*表 :宾馆_客房
id KeyId 客房类型 价格
14标准间180元/天
24单人间100元/天
33总统豪华10000元/天
43商务客房2000元/天
54三人间200元/天NULL
表:图片信息
picid subid KeyId picname filename servefile
2944标准客房 20070612.jpgD:\projects\map\map\pictures\20070612.jpgimage/jpeg
3043总统豪华客房2007061202.jpgD:\gby\test\map\pictures\2007061202.jpgimage/jpeg
3143商务套房 2007061203.jpgD:\gby\test\map\pictures\2007061203.jpgimage/jpeg
3253名店廊 2007061207.jpgD:\gby\test\map\pictures\2007061207.jpgimage/jpeg
想要得到以下内容:
picid picname 客房类型 价格 serverfile
30总统豪华客房 总统豪华 10000元/天 D:\gby\test\map\pictures\2007061202.jpg
31商务套房 商务客房 2000元/天 D:\gby\test\map\pictures\2007061203.jpg
create table 宾馆_客房
(id int not null,
KeyId int not null,
客房类型 nvarchar(20) null,
价格 nvarchar(30) null)
create table 图片信息
(PicId int not null,
SubId int,
KeyId int,
PicName nvarchar(50),
serverFile nvarchar(50))*/
[解决办法]
select a.picid,a.picname,b.客房类型,b.价格,a.serverfile
from 图片信息 a,宾馆_客房 b
where a.keyid=b.keyid and
(select count(*) from 图片信息 where keyid=a.keyid and picid <a.picid)=
(select count(*) from 宾馆_客房 where keyid=b.keyid and id <b.id)