Mysql查询某数值条件附近最大值或者最小值
项目中需要每次查询一个表中的最新的一条记录,表结构里面有日期字段。只需要显示一条记录。
Mysql帮助文档里面的解释
3.6.2. 拥有某个列的最大值的行
任务:找出最贵物品的编号、销售商和价格。这很容易用一个子查询做到:
SELECT article, dealer, price
FROM shop
WHERE price=(SELECT MAX(price) FROM shop);
另一个解决方案是按价格降序排序所有行并用MySQL特定LIMIT子句只得到第一行:
SELECT article, dealer, price
FROM shop
ORDER BY price DESC
LIMIT 1;
注:如果有多项最贵的物品( 例如每个的价格为19.95),LIMIT解决方案仅仅显示其中一个!
下例:
查询比某条件大但相邻最近的一条数据
select *
from message_file_datails where message_file_id>47602488998381241
ORDER BY message_file_id
LIMIT 1 ;
查询比某条件小但相邻最近的一条数据
select *
from message_file_datails where message_file_id<47602488998381241
ORDER BY message_file_id DESC
LIMIT 1 ;
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。