Mysql 4.0 获取最小值数据

标签 mysql group-by min

是否可以获取最小 id 的记录并按列分组? (4.0 中)

SELECT period, activity, date
FROM (
    SELECT MIN(id) id
    FROM Booking 
    WHERE place = 'CONFERENCE'          
    AND Date = '05 - Mar'   
    GROUP BY period
) A
INNER JOIN Booking B
USING (id) ORDER BY id

可能相当于4.0版本吗?

最佳答案

我认为以下内容可以在没有子查询的情况下获取 id 的最小值:

select b1.period, b1.activity, b1.date
from booking b1 cross join
     booking b2
group by b1.id, b2.period
having b1.id = min(b2.id)

您可以将 where 条件应用为:

select b1.period, b1.activity, b1.date
from booking b1 cross join
     booking b2
where b2.place = 'CONFERENCE' and   
      b2.Date = '05 - Mar'   
group by b1.id, b2.period
having b1.id = min(b2.id);

关于Mysql 4.0 获取最小值数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21335125/

相关文章:

MySQL查询排序数据的两种方式

mysql - 在 where 子句中无效使用没有聚合函数的组函数

python-3.x - Pandas 跨行的最小值和最大值

Python Pandas 按函数分组

c - 在 C 中生成最大值、最小值和平均数

php - 使用 CodeIgniter 和 MySQL 的 PhoneGap 应用程序?

mysql - 协议(protocol)数据包乱序

MySQL/ColdFusion 8 : sql-mode

ruby-on-rails - Rails 4 + ActiveRecord + postgresql + group by 不起作用?

javascript - 如何在javascript中按不同的键进行分组?