繁体   English   中英

每个内部联接表如何只获得一个结果

[英]How to get only one result per inner joined table

我具有以下数据库结构:

摆放桌子 禁忌

Place_has_Event表

Place_has_Event表

活动表

在此处输入图片说明

如何获得每个地点最近的(最近的)事件。 所以我需要所有地方的第一件事。 我想在一个查询中得到这个。

您想要select min(start)以获取最低日期(这是假定修剪了过去的事件,否则您可以使用where子句来过滤过去的事件),然后group by location

这将返回每个位置的最低日期的事件。

某些语法可能已关闭,因为我的经验是使用sql-server而不是mysql。

Select Event.name, min(Event.start) 
From Event Inner Join Place_has_Event On event.ID = Place_has_Event.Event_ID
Where Event.start > getdate() 
Group By Place_has_Event.Place_ID

根据需要添加选择条目。

你可以试试看吗?

SELECT t1.* from tbl_name AS t1 
where t1.startdate=(
  select max(t2.startdate) from tbl_name as t2
)

暂无
暂无

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

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