mysql中已建表:1.客户信息表(CustomerInfo)用来保存在酒店订房的客户的基本信息。2.客房业务表(RoomOperation)用来保存目前酒店正有客户入住的客房的相关信息。3.业务记录表(History)用来保存酒店里所有入住过客户的客房的业务信息。用python语言编写一个统计页面,显示某段时间(可以选择起止日期)内酒店的入住人数和入账金额。
时间: 2024-03-21 08:39:52 浏览: 27
好的,下面是一个简单的Python程序,可以根据输入的起止日期查询酒店的入住人数和入账金额:
```python
import pymysql
# 连接数据库
db = pymysql.connect(host="localhost", user="root", password="password", database="hotel")
# 获取用户输入的起止日期
start_date = input("请输入起始日期(格式为YYYY-MM-DD):")
end_date = input("请输入结束日期(格式为YYYY-MM-DD):")
# 查询客房业务表和业务记录表,获取入住人数和入账金额
cursor = db.cursor()
query = "SELECT COUNT(DISTINCT customer_id), SUM(price) FROM RoomOperation INNER JOIN History ON RoomOperation.room_num=History.room_num WHERE check_in_date >= %s AND check_out_date <= %s"
cursor.execute(query, (start_date, end_date))
result = cursor.fetchone()
num_of_guests = result[0]
total_revenue = result[1]
# 显示结果
print("在 %s 至 %s 期间,酒店入住人数为 %d 人,入账金额为 %.2f 元。" % (start_date, end_date, num_of_guests, total_revenue))
# 关闭连接
db.close()
```
请注意,这个程序假设数据库中的客房业务表和业务记录表的结构是正确的,并且数据已经正确录入。如果您的数据库结构与此不同,您需要相应地修改查询语句。