sql >> Databáze >  >> RDS >> Mysql

Získejte proměnnou MIN Datum na základě značky v řádku

Použijte funkce okna:

select t.*,
       coalesce(next_time, time) as imputed_time
from (select t.*,
             sum(context = 'reset') over (partition by user_id) as cnt_reset,
             min(case when context is null then time end) over (partition by userid order by time rows between current row and unbounded following) as next_time
      from t
     ) t
where cnt_reset = 0 or context = 'reset';


  1. Dvě aplikace Laravel na stejném serveru jsou ve vzájemném konfliktu

  2. heslo mysql kazí můj výpis

  3. Přejmenování indexů pomocí procedury sp_rename

  4. Jak vytvořit tabulku na serveru SQL Server