我正在研究数据库,但遇到问题(总菜鸟)。我无法在此帐户上发布图片,我已发布指向我图片的链接。基本上,我有一张预订桌和一张房间桌。我想对每个房间进行日期差异操作,并将其乘以租金价格,并按房间号码分组。 在我隐藏日期差异之后,我试图做出的最终结果是这样的,因为我只需要它进行计算。
with pd.option_context("display.max_columns", 0):
print(df)

我将此作为我的SQL查询:
<!DOCTYPE html>
<html>
<body>
<table style="width:100%">
<tr>
<th>Room Number</th>
<th>Total</th>
</tr>
<tr>
<td>1</td>
<td>375</td>
</tr>
<tr>
<td>2</td>
<td>375</td>
</tr>
<tr>
<td>3</td>
<td>1680</td>
</tr>
<tr>
<td>4</td>
<td>700</td>
</tr>
<tr>
<td>6</td>
<td>60</td>
</tr>
<tr>
<td>7</td>
<td>540</td>
</tr>
</table>
</body>
</html>
我还没有计算金钱部分,因为我甚至无法让Datediff为每个房间工作。
答案 0 :(得分:0)
我认为你需要为每个房间 - 客户对计算日期,然后按room_id进行分组。您可以在后面或在组中使用多个价格。我不知道ms-access,但是通过sql逻辑它应该看起来像:
SELECT [Room Number], SUM(DATEDIFF("d", CheckInDate, CheckOutDate)) * price_per_night as dif
FROM Reservations
GROUP by [Room Number]
答案 1 :(得分:0)
我们假设您的预订存储在名为预订的表格中,而房间信息则存储在名为Rooms的表格中。 如果您想要包括所有房间,无论是否已预订,请使用:
for ( int i = 0; i < 5; i++)
{
char filename[200]; // Make it large enough for your needs.
std::sprintf(filename, "filelocation/name%d.txt", i+1);
name1->readName(filename);
}
如果您只对预订的房间感兴趣,请通过INNER JOIN替换RIGHT JOIN。
PS你的HTML示例对于7号房间是错误的,它应该是1080(9 * 120)。