sql >> Database teknologi >  >> RDS >> Mysql

MySQL for at vælge maks. værdi mellem tændt og slukket tidsstempler plus 3 sekunder

Forespørgslen nedenfor vælger alle rækker, hvor status ikke er nul.

For de rækker, hvor status er 'Fra', bruger den en underforespørgsel til at returnere den maksimale vægt mellem den seneste 'Til' og den aktuelle 'Fra' + 3 sekunder

select t.TimeStr, t.Status,
  case
    when status = 'Off'
    then (select max(cast(Weight as signed)) from tempbatch t2 
          where t2.TimeStr between 
            (select max(TimeStr) 
                 from tempbatch t3 
                 where status = 'On' and t3.TimeStr < t.TimeStr)
          and date_add(t.TimeStr, interval 3 second)
    )
    else Weight
  end as Weight
from tempbatch t
where t.Status is not null
order by TimeStr

http://sqlfiddle.com/#!9/f27fb/6



  1. Addnode resolv.conf Fejl

  2. Generer script til både skema og data

  3. installer pakker fra docker-compose.yml i docker container

  4. BREAK-sætning i PL/pgSQL