如何从表2的乘数行中减去?mySQL

如何从表2的乘数行中减去?mySQL,mysql,subtraction,Mysql,Subtraction,我已经试了几个小时到处寻找一种方法,从乘法器行中减去,从2表?因为我不断地从mySQL工作台得到错误 我有两张桌子酒店,酒店住宿 我需要得到唯一房间的数量,然后减去个人容量 +--------------------+------------------+ hotel_stay +--------------------+------------------+ room (PK) 99 99 10 10 10 +--------------------+------------------+

我已经试了几个小时到处寻找一种方法,从乘法器行中减去,从2表?因为我不断地从mySQL工作台得到错误

我有两张桌子
酒店
酒店住宿

我需要得到唯一房间的数量,然后减去个人容量

+--------------------+------------------+
hotel_stay
+--------------------+------------------+
room (PK)
99
99
10
10
10

+--------------------+------------------+
hotel  
+--------------------+------------------+ 
room(FK)  |   capacity
99        |   10
10        |   12
输出将与酒店放在同一张桌子上,否则我将不得不将我们作为

room | capacity
99   | 8      
10   | 9   

我不确定我是否完全理解你的问题。但是你可以这样告诉我们每个房间的总容量:

select h.room, 
   (h.capacity - hs.TotalBooked) as Capacity
from hotel h
inner join 
(
    select COUNT(room) as TotalBooked, 
       Room
    from hotel_stay
    group by room
) hs
    on h.room = hs.room
看。这将返回结果:

| ROOM | CAPACITY |
-------------------
|   10 |        9 |
|   99 |        8 |

我不确定我是否完全理解你的问题。但是你可以这样告诉我们每个房间的总容量:

select h.room, 
   (h.capacity - hs.TotalBooked) as Capacity
from hotel h
inner join 
(
    select COUNT(room) as TotalBooked, 
       Room
    from hotel_stay
    group by room
) hs
    on h.room = hs.room
看。这将返回结果:

| ROOM | CAPACITY |
-------------------
|   10 |        9 |
|   99 |        8 |

你能再次尝试描述你的数据吗?我试图对其进行编辑以使其可读,但我不确定您的表的外观。您能否再次尝试描述您的数据?我试图对其进行编辑以使其可读,但我不确定您的表的外观。您好,谢谢您的回复,我将尝试此操作,但有一个问题:此代码的作用是什么hs.TotalRoom Capacity?-编辑-天哪!感谢我找了3个小时,谢谢你。将保留此代码以备将来使用reference@KelvinSeah
hs.TotalRoom
是子查询中的计数。我刚刚给它起了这个名字,你可以改别名。非常感谢它的工作!我早就应该问这个问题了,而不是三个小时都找不到。我会把这个留到将来refernce@KelvinSeah很乐意帮忙。如果你发现这个答案是有用的,那么考虑点击它左边的复选标记来接受它。这将有助于网站的未来访问者,您将获得网站代表的认可。这和最后一个问题Internal join做了什么,我看到了一些解释,但无法理解?您好,谢谢您的回复,我将尝试此问题,但有一个问题问题此代码做什么hs.TotalRoom Capacity?-编辑-天哪!感谢我找了3个小时,谢谢你。将保留此代码以备将来使用reference@KelvinSeah
hs.TotalRoom
是子查询中的计数。我刚刚给它起了这个名字,你可以改别名。非常感谢它的工作!我早就应该问这个问题了,而不是三个小时都找不到。我会把这个留到将来refernce@KelvinSeah很乐意帮忙。如果你发现这个答案是有用的,那么考虑点击它左边的复选标记来接受它。这将有助于网站的未来访问者,你将获得网站代表的认可。这是不是还有最后一个问题,inner join做了什么,我看到了一些解释,无法理解?