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

लगातार दिनों की अधिकतम लंबाई की जाँच करना जो विशिष्ट स्थिति को पूरा करते हैं

यह समाधान तब तक काफी अच्छा प्रदर्शन करता प्रतीत होता है जब तक कि user_id और brews_id पर एक समग्र अनुक्रमणिका है -

SELECT *
FROM (
    SELECT t.*, IF(@prev + INTERVAL 1 DAY = t.d, @c := @c + 1, @c := 1) AS streak, @prev := t.d
    FROM (
        SELECT DATE(timestamp) AS d, COUNT(*) AS n
        FROM beverages_log
        WHERE users_id = 1
        AND beverages_id = 1
        GROUP BY DATE(timestamp)
        HAVING COUNT(*) >= 5
    ) AS t
    INNER JOIN (SELECT @prev := NULL, @c := 1) AS vars
) AS t
ORDER BY streak DESC LIMIT 1;


  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. क्या किसी को इस PHP त्रुटि संदेश के पीछे का अर्थ पता है?

  3. मुझे PHP में mysql_* फ़ंक्शन का उपयोग क्यों नहीं करना चाहिए?

  4. डेटटाइम में ड्रॉप टाइम

  5. अधिकतम मिश्रित स्ट्रिंग/इंट कॉलम का चयन कैसे करें?