202
社区成员
发帖
与我相关
我的任务
分享
SELECT *
from table201611 as o1
where GZLX='通信中断' and not exists(select * from table201611 where
GZLX<>'通信中断' and
UNIX_TIMESTAMP(STR_TO_DATE (DYSJ, '%Y%m%d %H%i%s'))
between UNIX_TIMESTAMP(STR_TO_DATE (o1.DYSJ, '%Y%m%d %H%i%s')) and UNIX_TIMESTAMP(DATE_ADD(STR_TO_DATE (o1.DYSJ, '%Y%m%d %H%i%s'),INTERVAL 24 hour))
and TZBH=o1.TZBH)
and UNIX_TIMESTAMP(STR_TO_DATE (o1.DYSJ, '%Y%m%d %H%i%s'))<> (select max(UNIX_TIMESTAMP(STR_TO_DATE (DYSJ, '%Y%m%d %H%i%s'))) from table201611 where TZBH=o1.TZBH)
and
(select GZLX from table201611 where UNIX_TIMESTAMP(STR_TO_DATE (DYSJ, '%Y%m%d %H%i%s'))>=UNIX_TIMESTAMP(DATE_ADD(STR_TO_DATE (o1.DYSJ, '%Y%m%d %H%i%s'),INTERVAL 24 hour)) and TZBH=o1.TZBH order by UNIX_TIMESTAMP(STR_TO_DATE (DYSJ, '%Y%m%d %H%i%s')) limit 1
)= o1.GZLX
group by TZBH
limit 1;