你好我在一家酒店/别墅相关的预订系统表的Microsoft SQL Server数据库和需要帮助创建一些查询,获取相关数据:帮助酒店查询
为了能够找到在特定日期退房的客人列表,按别墅类型分组并提供当天的总人数(即计数)。
对于查询我想我不得不使用2个相关表格客人预约和预约表:
create table guest_reservation(confirm_no int,
agent_id int,
g_name varchar (30),
g_phone varchar (10));
create table reservation(
confirm_no int,
credit_card_no char (16),
res_checkin_date datetime,
res_checkout_date datetime,
default_villa_type char (1),
price_plan char (1));
I thought using a query like this would help, but it didn't seem to:
SELECT g_name, villa_type, COUNT(*)
FROM guest_reservation, reservation
WHERE guest_reservation.confirm_no = reservation.confirm_no
AND res_checkout_date = ‘insert date for when you would want to check out here’
GROUP BY villa_type;
想法/帮助?
编辑:我想我找到了第一次的问题...
另一个查询我想上的是,如果客人想要某种类型的房间,然后如果这类型的房间将可在日期帮助他们想留下来。
我以前只是预约表,但我不知道这很会做我想做的,这是我目前有:
Select villa_type from reservation
where res_check_in_date not between '2011-10-08' and '2011-10-09'
and res_check_out_date not between '2011-10-08' and '2011-10-09'
为什么所有的'alter'语句,只是把它放到表格声明中以便于阅读。 – JNK 2011-04-08 15:56:07
对不起,只是试图展示我是如何创建表,涉及的键,然后是最后一个查询后我想要做的事情......这主要是我询问的最后一个查询,如何正确使用它以获取我需要的输出是什么? – Jon 2011-04-08 16:00:48
请将它合并到一个'CREATE TABLE'语句中,它会更容易帮助你。我们确实需要查看表结构来评估查询。 – JNK 2011-04-08 16:01:39