Mysql
 sql >> база данни >  >> RDS >> Mysql

ПОРЪЧАЙТЕ ПО един идентификатор, когато има повече от същите идентификатори в една таблица

Искаме най-новото публикувайте във всеки уникален нишка, можем да направим това чрез...

Използване на GROUP BY и HAVING .

SELECT * 
FROM Posts
JOIN Discussions
    on Discussions.discussion_id = Posts.discussion_id
GROUP BY Discussions.discussion_id
HAVING Posts.post_time = max(Posts.post_time)
ORDER BY Posts.post_time DESC

Това е единпример ! Уверете се, че го използвате, за да промените своя собствена, но е доста проста. Нямам база данни, за да тествам това, но съм тестван с мои собствени данни и различни колони и работи.

Забележка: Това предполага, че всеки Id е идентичен и в двете таблици. Предполага се също, че post_time е някаква времева стойност, която се увеличава, колкото по-нова е публикацията (т.е. SQL Timestamp).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sql свързва две таблици

  2. Обединяване на 2 таблици за заявка SELECT?

  3. Използване на псевдоними на колони в полето Решетка на поръчките за продажба

  4. MySQL Limit с много към много отношения

  5. SQL заявка, сравняваща атрибут в множество кортежи въз основа на стойности на друг атрибут в релацията