使用减法操作从两个表创建视图

使用减法操作从两个表创建视图

问题描述:

我几乎是新的SQL语法,我需要帮助来创建MySQL视图。使用减法操作从两个表创建视图

我有一个名为ID的PK列,名为total_seats的列和另一个列是title。 在第二个表中,我有多行,其中有一个firstname列和与第一个表中存在的PK(total_seats)对应的FK。

我需要创建一个视图,我可以计算第一个表中存在的每个元素的available_seatstotal_seats减去第二个表中出现的位置)。

其实我正在计算“占用”的席位,但加入给我的结果只为已采取的事件,所以结果是,我没有看到空的事件available_seats

SELECT b.ID_event, a.*, 
COUNT(*) AS occupied FROM second_table b 
LEFT JOIN first_table a ON b.ID_event = a.ID 
GROUP BY ID_event 

你可以减计数

select a.ID_event, a.total_seats, count(*) as occupied, a.total_seats - count(*) difference 
from first_table a 
left join second_table ba ON b.ID_event = a.ID 
group by a.ID_event, a.total_seats 
+0

它的作品,但不幸的是它的接缝的票(减去)'ONE' 与第二表中没有匹配的事件ID。 @scaisEdge – Andrea

+0

然后更新您的问题添加一个适当的数据样本和预期的结果... – scaisEdge

+0

我终于解决了这个问题,使用此代码来创建我的视图。 感谢@scaisEdge的灵感和首次实施。 (SELECT *。*, )(SELECT a。 .ID)AS available_seats FROM first_table a' – Andrea