sql >> Database >  >> RDS >> Mysql

MySQL - hoe het laatste onderwerp per thread te tonen

Ok, ik kwam zelf met een oplossing. Ik heb een afhankelijke subquery gebruikt om op te lossen. Dit is wat ik heb in het resultaat:

        SELECT
             item_discuss_threads.item_discuss_thread_id
             , item_discuss_threads.item_discuss_thread_datetime
             , item_discuss_threads.item_discuss_thread_title
             , latest_posts.item_discuss_post_title
             , latest_posts.item_discuss_post_datetime
             , COUNT(item_discuss_posts.item_discuss_post_id) AS nb_posts
        FROM
             item_discuss_threads
        INNER JOIN item_discuss_posts
             ON item_discuss_threads.item_discuss_thread_id=item_discuss_posts.item_discuss_thread_id
        INNER JOIN item_discuss_posts AS latest_posts
             ON latest_posts.item_discuss_thread_id=item_discuss_threads.item_discuss_thread_id
        WHERE
             (
                  SELECT
                        item_discuss_post_id
                  FROM
                        item_discuss_posts AS p
                  WHERE
                        p.item_discuss_thread_id=item_discuss_posts.item_discuss_thread_id
                  ORDER BY
                        item_discuss_post_datetime DESC
                  LIMIT
                       1
             )=latest_posts.item_discuss_post_id
        GROUP BY
             item_discuss_threads.item_discuss_thread_id
        ORDER BY
            latest_posts.item_discuss_post_datetime DESC


  1. Uitzondering voor kapotte buizen in de Grails-app

  2. Voorbeeld Oracle-functie (retournummer)

  3. MYSQL_ROOT_PASSWORD is ingesteld maar krijgt toegang geweigerd voor gebruiker 'root'@'localhost' (met wachtwoord:YES) in docker-container

  4. Meerkolomsindex op 3 velden met heterogene gegevenstypen