MySQL从另一个有条件的表中计数

时间:2012-06-09 23:50:35

标签: mysql sql database

我建立了一段时间前开发的解决方案 - 机票预订。我现在需要添加一个功能,以允许门票被保持"在购买过程中,使它们看起来像卖给另一位来到网站的客户(防止双重预订)。

原始表格的详细信息在我之前的问题MySQL - Trying to count tickets sold for an event中。 tickets表现在具有held_until DateTime值和paid tinyint(bool)值。

我需要events.capacity - COUNT(tickets.id) AS available现在只计算那些:

的门票
  • {1}的值为{<1}}
  • paid值为0且paid

我已尝试添加held_until > now()WHERE条款,但这些条款会阻止未售出任何故障单的事件。我也玩过嵌套查询,但没有得到任何地方...

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

修改Andomar建议的查询(在其他主题中),如下所示:

变化

ON events.id = tickets.event_id

ON ( events.id = tickets.event_id AND ( tickets.paid = 1 OR tickets.held_until > now() )

即使您可以在其他主题中找到所有必需的信息,也可以在此重复一些相关细节。