Mysql
 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कोड या डेटाबेस में कैलकुलेशन सेव करें?

  2. MySQL GROUP BY और खाली पंक्तियों को भरें

  3. MySQL के साथ एक चुनिंदा क्वेरी में CASE, WHEN, THEN, END का उपयोग करना

  4. MySQL में अग्रणी और अनुगामी वर्ण कैसे निकालें?

  5. मैं एक टेबल को कई अलग-अलग टेबल से कैसे जोड़ूं?