MySQL - 如何选择连续行取决于数据

时间:2014-07-10 22:59:53

标签: mysql select rows

我从我的表中进行了简单的选择,其中id_usu_detalle=80

登录

enter image description here

如何使用连续的log_estado 0, 1, 0, 1进行选择,如下所示:

log_id   |   id_usu_detalle     |     log_estado     |      log_horafecha
  1775   |       80             |        0           |    2014-07-08 15:20:51    
  1774   |       80             |        1           |    2014-07-08 15:20:31    
  1513   |       80             |        0           |    2014-07-04 10:19:34  
  1512   |       80             |        1           |    2014-07-04 10:18:53
  1483   |       80             |        0           |    2014-07-03 18:37:45    
  1482   |       80             |        1           |    2014-07-03 18:36:16  

有可能吗?

1 个答案:

答案 0 :(得分:2)

这样的事情?我还没有测试过,但我认为这样可行

SELECT 
    log_id, id_usu_detalle, log_horafecha, log_estado
FROM
    (SELECT 
        log_id,
        id_usu_detalle,
        log_horafecha,
        log_estado,
        IF(@A = log_estado, 5, 0) AS counter,
        @A:=log_estado
    FROM log
    CROSS JOIN (SELECT @A:=10000) AS t) AS temp
WHERE counter = 0;