Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Berechnung der MySQL-Funktionsskalierung

Ihre Frage ist etwas knapp an Erklärungen, aber ich denke, Sie möchten Fensterfunktionen (nur in MySQL 8.0 verfügbar):

select 
    time, 
    value,
    (value - min(value) over() / (max(value) over() - min(value) over()) normalized_value
from measurement_values  
where measure_id = 49 and time >= '2020-05-30 00:00'

Oder Sie können in früheren Versionen dasselbe Ergebnis erhalten, indem Sie die Tabelle mit einer aggregierten Abfrage verknüpfen:

select 
    mv.time, 
    mv.value,
    (mv.value - mx.min_value) / (mx.max_value - mx.min_value) normalized_value
from measurement_values  
cross join (
    select min(value) min_value, max(value) max_value
    from measurement_values
    where measure_id = 49 and time >= '2020-05-30 00:00'
) mx
where measure_id = 49 and time >= '2020-05-30 00:00'