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

php mysql समूह नवीनतम रिकॉर्ड प्राप्त करने के लिए, पहले रिकॉर्ड नहीं

यदि आप उन विशेषताओं का चयन करते हैं जिनका उपयोग समूह खंड में नहीं किया जाता है, और जो समुच्चय नहीं हैं, तो परिणाम अनिर्दिष्ट है। अर्थात आप नहीं जानते कि अन्य विशेषताओं को किन पंक्तियों से चुना गया है। (एसक्यूएल मानक ऐसे प्रश्नों की अनुमति नहीं देता है, लेकिन MySQL अधिक आराम से है)।

तब प्रश्न लिखा जाना चाहिए उदा। के रूप में

SELECT post_id, forum_id, topic_id
FROM posts p
WHERE post_time =
  (SELECT max(post_time) FROM posts p2
   WHERE p2.topic_id = p.topic_id
   AND p2.forum_id = p.forum_id)
GROUP BY forum_id, topic_id, post_id
ORDER BY post_time DESC
LIMIT 5;

या

SELECT post_id, forum_id, topic_id FROM posts
NATURAL JOIN
(SELECT forum_id, topic_id, max(post_time) AS post_time
 FROM posts
 GROUP BY forum_id, topic_id) p
ORDER BY post_time
LIMIT 5;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Drupal डेटाबेस संरचना - कुशल/अक्षम?

  2. Neo4j - Cypher . का उपयोग करके एक इंडेक्स बनाएं

  3. mysql दिनांक प्रारूप से वर्ष निकालें

  4. वास्तविक परिणाम से संबद्ध टेक्स्ट स्निपेट के साथ खोज परिणाम प्रदर्शित करने के सर्वोत्तम अभ्यास

  5. एडब्ल्यूएस आरडीएस पर MySQL को PostgreSQL में माइग्रेट करना, भाग 4