sql >> データベース >  >> RDS >> Mysql

mysql機能スケーリング計算

    あなたの質問は説明が少し短いですが、ウィンドウ関数(MySQL 8.0でのみ利用可能)が必要だと思います:

    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'
    

    または、以前のバージョンでは、集計クエリを使用してテーブルを結合することで同じ結果を得ることができます:

    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'
    



    1. Cakephp3でデータベース接続を動的に変更する

    2. PHPでmysqlの日付をAgoに変更する方法

    3. いくつかのオプションの検索語を含むパラメーター化されたクエリ

    4. MySQLがデータ送信状態にあるとはどういう意味ですか?