Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Masalah saat mengelompokkan

Coba yang ini (beri tahu saya jika berhasil):

SELECT forum_categories.title, forum_messages.author, 
   forum_messages.date AS last_message
FROM forum_categories
JOIN forum_topics ON forum_topics.category_id=forum_categories.id
JOIN forum_messages ON forum_messages.topic_id=forum_topics.id
JOIN (SELECT MAX(m.date) as date, top.category_id  
     FROM forum_messages m
     JOIN forum_topics top ON m.topic_id = top.id
     GROUP BY top.category_id) as t
  ON t.category_id = forum_topics.category_id AND t.date = forum_messages.date
WHERE forum_categories.id=6
GROUP BY forum_categories.id

Ini adalah opsi kedua:

SELECT forum_categories.title, forum_messages.author, 
       forum_messages.date AS last_message
FROM forum_categories
JOIN forum_topics ON forum_topics.category_id=forum_categories.id
JOIN forum_messages ON forum_messages.topic_id=forum_topics.id
WHERE forum_categories.id=6
AND forum_messages.date = (SELECT MAX(date)
                           FROM forum_messages t
                           WHERE t.topic_id = forum_topics.id)
GROUP BY forum_categories.id
ORDER BY forum_categories.date ASC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tabel MySQL sebagai FIFO/Antrian

  2. Kesalahan MySQL #1054 - Kolom tidak dikenal di 'Daftar Bidang'

  3. Di Django, bagaimana menemukan istilah yang merupakan bagian dari string alih-alih berisi string itu?

  4. Menemukan nilai duplikat di MySQL

  5. Alternatif untuk parsial (kolom tidak teragregasi) dalam grup oleh [masalah Inventaris Ollivander di peringkat peretas]