主页 > 知识库 > mysql实现查询最接近的记录数据示例

mysql实现查询最接近的记录数据示例

热门标签:AI电销 呼叫中心市场需求 Linux服务器 网站排名优化 铁路电话系统 服务外包 百度竞价排名 地方门户网站

本文实例讲述了mysql实现查询最接近的记录数据。分享给大家供大家参考,具体如下:

查询场景:现在的需求是查询年龄最接近20岁的用户,获取前5个

我现在的数据库记录用户年龄的字段记录格式是"1995-05-20",字段名称birthday

解决思路:

1.首先查询时转换成用户年龄

日期格式转年龄的方法:

(1)当前年份 - 日期格式中的年份

date_format(now(), '%Y') - from_unixtime(unix_timestamp(birthday), '%Y')

(2)当前年份 - 日期格式中的年份(获取方法不同)

date_format(now(), '%Y') - year(birthday)

2.通过order by asb() 排序获取最接近的数据

完整的语句:

SELECT
  (date_format(now(), '%Y') - year(birthday)) as age
FROM
  user
WHERE
  is_anchor = 1
ORDER BY abs(20 - age)
limit 0,5

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。

您可能感兴趣的文章:
  • 详解MySQL恢复psc文件记录数为0的解决方案
  • PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
  • MySQL数据库查看数据表占用空间大小和记录数的方法
  • MYSQL速度慢的问题 记录数据库语句
  • MySQL通过触发器解决数据库中表的行数限制详解及实例
  • MySQL分区表的局限和限制详解
  • MySQL 如何限制一张表的记录数

标签:崇左 黄山 铜川 湘潭 仙桃 湖南 兰州 衡水

巨人网络通讯声明:本文标题《mysql实现查询最接近的记录数据示例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266