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

MySQL समूह के लिए नवीनतम रिकॉर्ड पुनर्प्राप्त करता है

GROUP BY को समेकित कार्यों के साथ उपयोग करने का इरादा है, अन्यथा यह मनमाने ढंग से प्रति समूह एक पंक्ति का चयन करता है। आपका समाधान (ऊपर और आपके स्व-उत्तर में) काम करता है क्योंकि ऐसा लगता है कि MySQL प्रत्येक समूह की पहली पंक्ति रखता है, लेकिन आपको इसकी गारंटी नहीं है कि यह हमेशा होगा।

आप प्रत्येक post_id . के लिए नवीनतम टिप्पणी की तिथि प्राप्त कर सकते हैं इस तरह।

select post_id, MAX(datetime) as latest from post_comments group by post_id

नवीनतम टिप्पणी का चयन करने के लिए इसका उपयोग करें:

SELECT t1.* FROM post_comments AS t1
JOIN (
    SELECT post_id, MAX(datetime) AS latest FROM post_comments GROUP BY post_id
) AS t2
ON t1.post_id = t2.post_id AND t1.datetime = t2.latest


  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 अलग auto_increment के साथ एक संबंध तालिका बनाना

  2. MySQL में एक लिंक्ड सूची या समान कतार बनाना?

  3. सरणी डेटा प्रकार, विभाजित स्ट्रिंग,

  4. दो कॉलम mysql . से संयोजन की स्थिति

  5. जन्मतिथि और आयु को कैसे स्टोर करें ताकि PHP/MySQL में आयु को दैनिक रूप से अपडेट किया जा सके?