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

किसी दिए गए दिनांक के लिए SQL तालिका में कॉलम के योग की गणना कैसे करें और निकटतम पिछली तारीख के साथ छूटे हुए मानों को पैच करना?

यह सुंदर नहीं है, क्योंकि इसे आपकी तालिका की चार प्रतियों को अपने साथ जोड़ना है, जो सभी प्रकार के प्रदर्शन दर्द को प्रभावित कर सकता है (मैं दृढ़ता से आपको id . पर अनुक्रमणिका रखने की सलाह दी जाती है और date )... लेकिन यह चाल चलेगा:

SELECT   y.report_date, SUM(x.value)
FROM     mytable AS x
  NATURAL JOIN (
    SELECT   a.id, b.date AS report_date, MAX(c.date) AS date
    FROM     (SELECT DISTINCT id   FROM mytable) a JOIN
             (SELECT DISTINCT date FROM mytable) b JOIN
             mytable AS c ON (c.id = a.id AND c.date <= b.date)
    GROUP BY a.id, b.date
 ) AS y
GROUP BY y.report_date

इसे sqlfiddle पर देखें ।



  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 में asp.net सदस्यता तालिका पढ़ते समय त्रुटि

  3. MySQL प्रतिकृति:यदि मैं कोई डेटाबेस निर्दिष्ट नहीं करता, तो क्या log_bin सब कुछ लॉग करेगा?

  4. PHP Mysql का उपयोग करके फॉर्म से दिनांक सम्मिलित करना

  5. डेटाबेस द्वारा कई डेटाबेस के साथ एक mysqldump फ़ाइल को विभाजित करें