MySQL:在表中的索引列中获取相邻的值行

时间:2015-07-06 08:27:03

标签: mysql

我有一个表ALL_VALUES,其中包含已编入索引的单列VALUE

VALUE
3
6
10
11
17
18
18
21
25
25
29

现在,如果我知道特定值为17,我想获取包含17和顶部和底部相邻3行的行,即6,10,11,17,18,18,21。

如何为此编写SELECT查询。

1 个答案:

答案 0 :(得分:2)

抱歉,我已经习惯了MSSQL。但我认为这可能有用:

  Select t1.value from((SELECT value
    FROM ALL_VALUES
    WHERE value <= 17
    ORDER BY value DESC
    LIMIT 4)

    UNION ALL

    (SELECT value
    FROM ALL_VALUES
    WHERE value > 17
    LIMIT 3)) t1 order by value ASC;