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

प्रत्येक पिछले 7 दिनों के लिए सबसे बड़ा मान चुनें

SELECT   DATE(FROM_UNIXTIME(time)) AS daygroup, 
         MAX(value) AS max_value, 
         MIN(value) AS min_value
FROM     tbl
WHERE    time >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 7 DAY)
GROUP BY daygroup

इससे न्यूनतम और अधिकतम value मिलेगा पिछले 7 दिनों में प्रत्येक दिन के लिए।

संपादित करें: संपूर्ण पंक्ति का डेटा प्राप्त करने के लिए अद्यतन समाधान:

SELECT a.*
FROM tbl a
INNER JOIN
(
    SELECT   DATE(FROM_UNIXTIME(time)) AS daygroup, 
             MAX(value) AS max_value 
    FROM     tbl
    WHERE    time >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 7 DAY)
    GROUP BY daygroup
) b ON DATE(FROM_UNIXTIME(a.time)) = b.daygroup AND a.value = b.max_value



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. समूह द्वारा और Laravel . के साथ नवीनतम पंक्ति प्राप्त करें

  2. Laravel-5 'LIKE' समकक्ष (वाक्पटु)

  3. SQL बोली कॉन्फ़िगर नहीं है (Phpstorm)

  4. MySQL एक्सएमएल क्वेरी

  5. सिद्धांत में LIMIT के साथ उपश्रेणी