0
+------------+
| date       |
+------------+
| 2011-10-26 |
| 2011-11-01 |
| 2011-11-10 |
| 2011-11-24 |
| 2011-11-28 |
| 2011-12-05 |
| 2011-12-07 |
| 2011-12-19 |
| 2011-12-23 |
| 2011-12-28 |
| 2012-01-04 |
| 2012-01-10 |
| 2012-01-14 |
| 2012-01-20 |
| 2012-01-25 |
| 2012-02-02 |
| 2012-02-06 |
| 2012-02-21 |
| 2012-02-27 |
| 2012-03-01 |
+------------+

I have no any idea of how to do it. Please help :)

4

1 に答える 1

3

特定の日付に最も近い値を取得するには、差の絶対値で並べ替えます。

select *
from t
order by abs(datediff(date, date('2012-02-10')))
limit 1
于 2013-07-10T17:48:42.237 に答える