现在的表结构是这样的:
酒店表:t_hotel
id 序列
name 酒店名
city 城市
area 区
star 星级
房间表:t_room
id 序列
hotelid 对应t_hotel的id
name 房间名称
price 价格
bunk 床位现在搜索房间按照t_room分页的
1,[酒店名][房间名][价格]
2,[酒店名][房间名][价格]
3,[酒店名][房间名][价格]
这样同一个酒店里的房间满足检索条件的可能有多条记录,那[酒店名]就重复了要怎么搜索房间才能按照酒店数量分页,而不是按照房间数量分页,象这样的效果
1,[酒店名]
[房间名][价格]
2,[酒店名]
[房间名][价格]
[房间名][价格]
3,酒店名
[房间名][价格]
酒店表:t_hotel
id 序列
name 酒店名
city 城市
area 区
star 星级
房间表:t_room
id 序列
hotelid 对应t_hotel的id
name 房间名称
price 价格
bunk 床位现在搜索房间按照t_room分页的
1,[酒店名][房间名][价格]
2,[酒店名][房间名][价格]
3,[酒店名][房间名][价格]
这样同一个酒店里的房间满足检索条件的可能有多条记录,那[酒店名]就重复了要怎么搜索房间才能按照酒店数量分页,而不是按照房间数量分页,象这样的效果
1,[酒店名]
[房间名][价格]
2,[酒店名]
[房间名][价格]
[房间名][价格]
3,酒店名
[房间名][价格]
on h.id=r.hotelid order by h.name至于你要的什么格式,用别的程序做。
insert into t_hotel
select 'A001','奥林匹克大酒店','温州','华东区',5
union select 'B001','金都大酒店','长沙','华南区',4
union select 'A002','国贸大酒店','长沙','华南区',5
union select 'C001','金茂皇冠大酒店','温州','华东区',3
union select 'B002','国宾馆','长春','东北区',4
gocreate table t_room(id1 varchar(4),hotelid varchar(4),name1 varchar(20),price varchar(10),bunk varchar(4))
insert into t_room
select '0001','A001','808','1500','1-1'
union select '0002','B001','408','800','4-2'
union select '0003','A002','608','1200','6-3'
union select '0004','C001','108','250','2-4'
union select '0005','B002','308','650','3-1'
union select '0006','A001','708','1400','8-8'
union select '0007','C001','202','150','1-2'
union select '0008','B002','303','560','2-2'
go
select distinct t_hotel.name1,t_room.name1,price from t_hotel,t_room
where t_hotel.id1=t_room.hotelid
group by t_hotel.name1
order by t_hotel.name1,t_room.price
go
create table t_hotel(id1 varchar(4),name1 varchar(20),city varchar(20),area varchar(10),star int)
insert into t_hotel
select 'A001','奥林匹克大酒店','温州','华东区',5
union select 'B001','金都大酒店','长沙','华南区',4
union select 'A002','国贸大酒店','长沙','华南区',5
union select 'C001','金茂皇冠大酒店','温州','华东区',3
union select 'B002','国宾馆','长春','东北区',4
gocreate table t_room(id1 varchar(4),hotelid varchar(4),name1 varchar(20),price varchar(10),bunk varchar(4))
insert into t_room
select '0001','A001','808','1500','1-1'
union select '0002','B001','408','800','4-2'
union select '0003','A002','608','1200','6-3'
union select '0004','C001','108','250','2-4'
union select '0005','B002','308','650','3-1'
union select '0006','A001','708','1400','8-8'
union select '0007','C001','202','150','1-2'
union select '0008','B002','303','560','2-2'
go
select distinct t_hotel.name1,t_room.name1,price
from t_hotel,t_room
where t_hotel.id1=t_room.hotelid
group by t_hotel.name1,t_room.name1,price
order by t_hotel.name1,t_room.price
我改正了一下他的错误
2,[酒店名][房间名][价格]
3,[酒店名][房间名][价格]
就这个结果我觉得就很不错
下面这个结果有什么好啊?
1,[酒店名]
[房间名][价格]
2,[酒店名]
[房间名][价格]
[房间名][价格]
3,酒店名
[房间名][价格]
构造SQL就算构造出来,效果肯定也是糟糕,