Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

AVG का उपयोग करके MySQL क्वेरी में समस्या ()

यदि ये वास्तव में प्रतिदिन अपडेट होते हैं, तो दिनांक अंकगणित का उपयोग करें:

SELECT bline_id, AVG(flow) as flowavg
FROM blf
WHERE bline_id BETWEEN 1 AND 30 and
      date >= date_sub(now(), interval 10 day)
GROUP BY bline_id
ORDER BY bline_id ASC

अन्यथा, आपको एक काउंटर लगाना होगा, जो आप एक सहसंबद्ध उपश्रेणी के साथ कर सकते हैं:

SELECT bline_id, AVG(flow) as flowavg
FROM (select blf.*,
             (select COUNT(*) from blf blf2 where blf2.bline_id = blf.bline_id and blf2.date >= blf.date
             ) seqnum
      from blf
     ) blf
WHERE bline_id BETWEEN 1 AND 30 and
      seqnum <= 10
GROUP BY bline_id
ORDER BY bline_id ASC


  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 8.0 - क्लाइंट सर्वर द्वारा अनुरोधित प्रमाणीकरण प्रोटोकॉल का समर्थन नहीं करता है; MySQL क्लाइंट को अपग्रेड करने पर विचार करें

  3. MySql कंपोजिट इंडेक्स

  4. मैं एक यादृच्छिक समय अंतराल कैसे उत्पन्न करूं और इसे php का उपयोग करके एक MySQL डेटाटाइम में जोड़ूं?

  5. MySQL सत्र/उपयोगकर्ता को फ़ाइल विशेषाधिकार