(问题编辑)我的表有id,status,date,sequence
情境:获取满足以下条件的ID:
date
是最大值,不超过今天的和status
是A- 如果有多个状态"具有相同的
date
,则仅当其具有最大sequence
时才获取id
我正在用dbVisulizer
写MYSQL
。
编辑:尝试查询:
select id, max(date), max(sequence) from
table
where
table.date<=now() and status='A'
order by date desc,sequence desc
听起来我只是直接问问题,没有自己尝试任何事情,但在这种情况下,我完全陷入了困境,我尝试了case when
,但无法真正实现任何好的效果,任何起点都会得到通知
select id, max(date), max(sequence) from
table
where
table.date<=now() and status='A'
order by date desc,sequence desc
group_by id;
这应该会给你想要的结果。根据您的表和字段调整表和字段的名称。
select id from
table
where
table.date<now() and table.status='A'
order by date desc,sequence desc
limit 1;
你应该自己检查一下有没有错误。