繁体   English   中英

子查询中的MySQL查询计数

[英]MySQL query Count in subquery

再会,

我有个问题。

我有一张名为event_booking的表。 这里有事件,每个事件都有一个单独的位置。

所以我们有事件

event_booking有:

  1. 预订编号
  2. 预订名称
  3. 预定日期
  4. 预订位置
  5. 预订评论

结构类型为:

  • 预订 ID = 整数
  • 预订名称 = varchar
  • 预订日期 = 日期时间
  • 预订位置 = 整数
  • 预订评论 = 文字

现在我想创建一个查询,列出所有事件位置以及在那里设置了事件的每个位置。

所以 :

我会得到如下结果:

  1. 预订位置 = 4 & no_bookings = 256
  2. 预订位置 = 7 & no_bookings = 34
  3. 预订位置 = 6 & no_bookings = 128
  4. 预订位置 = 3 & no_bookings = 24

现在我摆弄了一个点燃并创建了以下查询。 这在语法方面是正确的。 但在输出方面完全错误。

SELECT `booking_location`, `booking_location` AS `selector`, (SELECT COUNT(1) FROM `event_booking` WHERE `booking_location` = `selector`) AS `no_bookings` FROM `event_booking` WHERE `booking_location` IN (SELECT `booking_location` FROM `event_booking` GROUP BY `booking_location`) 

我知道我错过了一些东西。 但我错过了什么.. 提前致谢;-)

假设您真的只想计算预订位置(基于您的可能结果示例以及您的查询代码):

  SELECT booking_location,
         COUNT(booking_location) AS no_bookings
    FROM event_booking
GROUP BY booking_location;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM