我正在为我的数据库编写查询,基本上我想查询数据库中每个房间发生的事件。这意味着我想找到1号房间发生的最早事件,以及最早发生在2号房间的事件。
下面我有1个房间执行此查询的代码。此代码仅返回房间2中最早的事件。如何查找房间1的最早事件和房间2的最早事件并在单个查询中返回它?
这将在一个查询中对数组的每个元素执行查询。这是可能的,还是我必须为每个房间写一个查询?
select name,
eventtime,
MIN(eventtime - currenttime) as time_from_test
from the_table
where the_table.room = Room1
group by the_table.room
order by time_from_test
limit 1
提前致谢
答案 0 :(得分:3)
select the_table.room,MIN(eventtime) as event_start_time_of_day
from the_table
group by the_table.room;
例如。如果您有5个房间,每个房间有5个活动时间,那么此查询将检索最小活动时间,并通过将所有活动分组到房间级别将其返回给您。