ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

mysql – 选择之前和之后的最近值

2019-06-10 09:11:25  阅读:111  来源: 互联网

标签:mysql sql


我有一张这样的桌子

假设该表是show_date

different | date
----------------------  
    -2    | 2011-04-18
----------------------
    -1    | 2011-04-19
----------------------
     4    | 2011-04-24
----------------------
     5    | 2011-04-25 
----------------------

我想选择2个值,第一个是第一个负值,第二个是第一个正值.
在此示例中将得到-1(2011-04-19)和4(2011-04-24)

我尝试按abs(不同)命令,但它给出最近的2,即-1和-2

解决方法:

SELECT
  MIN(CASE WHEN different > 0 THEN different ELSE NULL END) AS MinPositive,
  MAX(CASE WHEN different < 0 THEN different ELSE NULL END) AS MaxNegative
FROM show_date

标签:mysql,sql
来源: https://codeday.me/bug/20190610/1211117.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有