Sql 查询以获取最多 10 条记录并按提及行排名的字段排序
Sql query to fetch most recent record upto 10 and order by filed where row rank is mentioned
以下是我在 Mysql 中的 table。我想在字段“rank_date”中获取最新日期的记录,并根据字段“drama_rank”
中的订单#按顺序 1 到 10 显示结果
您可以使用子查询进行过滤,然后 order by
:
select t.*
from mytable t
where rank_date = (select max(rank_date) from mytable)
order by drama_rank
或者,假设 MySQL 8.0,您可以使用 window 函数:
select *
from (
select t.*, rank() over(order by rank_date desc) rn
from mytable t
) t
where rn = 1
order by drama_rank
以下是我在 Mysql 中的 table。我想在字段“rank_date”中获取最新日期的记录,并根据字段“drama_rank”
中的订单#按顺序 1 到 10 显示结果您可以使用子查询进行过滤,然后 order by
:
select t.*
from mytable t
where rank_date = (select max(rank_date) from mytable)
order by drama_rank
或者,假设 MySQL 8.0,您可以使用 window 函数:
select *
from (
select t.*, rank() over(order by rank_date desc) rn
from mytable t
) t
where rn = 1
order by drama_rank