Mysql SQL查询:针对具有特定水手人数的每个州

Mysql SQL查询:针对具有特定水手人数的每个州,mysql,sql,Mysql,Sql,我开始学习编写SQL查询。然而,我仍然在努力解决这个问题。 我必须写一个查询,返回每个州超过5名海员的海员id和他所做的预订总数。模式如下所示: Slr(sid,sname,评级,状态)和 储备(sid,投标,日) 这是我的审判: Select slr.state, slr.sid, count(*) From slr left join Reserves on slr.sid=reserves.sid Group By s.state Having count(*) >= 5 我知道这

我开始学习编写SQL查询。然而,我仍然在努力解决这个问题。 我必须写一个查询,返回每个州超过5名海员的海员id和他所做的预订总数。模式如下所示:

Slr
sid
sname
评级
状态
)和
储备
sid
投标

这是我的审判:

Select slr.state, slr.sid, count(*)
From slr left join Reserves on slr.sid=reserves.sid
Group By s.state
Having count(*) >= 5

我知道这不正确,但我能改变什么呢?

像这样的事情应该会让你开始

select slr.id
, state
, count(*) records

from slr join
(select state thestate, count(*) staterecords
 from slr
 group by state
 having count(*) >= 5 ) temp on state = thestate
 group by slr.id

这将为您提供5名或更多海员所在州的海员id。你的问题中没有任何东西能帮助我理解他有多少保留意见

是的,谢谢你提到这是我的错。它说,储备表是一个存储水手信息和他们过去所做的预订的表。