选择指定行与具有特定条件的某行之间的行

时间:2011-04-04 14:06:10

标签: mysql

您好
我们认为我们有一个表格(包含2个字段versioncompatible),数据如下:

+-------+------+  
| 0.1.1 | true |  
+-------+------+  
| 0.1.2 | false|  
+-------+------+  
| 0.1.3 | true |  
+-------+------+  
| 0.1.4 | true |  
+-------+------+  
| 0.1.5 | true |  
+-------+------+  
| 0.1.6 | false|  
+-------+------+  
| 0.1.7 | true |  

现在我要选择从version = '0.1.3'前一行到compatible = false的下一行compatible = false的所有行 结果应为0.1.20.1.30.1.40.1.5
我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

SELECT version, compatible
    FROM YourTable
    WHERE version >= '0.1.3'
        AND version < (SELECT version
                           FROM YourTable
                           WHERE version > '0.1.3'
                               AND compatible = 'false'
                           ORDER BY version
                           LIMIT 1)
    ORDER BY version