Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

zdobądź 10 najlepszych postów i 10 komentarzy do każdego posta sql

Coś w tym stylu zadziała.

with a as 
(
    SELECt TOP 10  Score
    , Post.ID as PostID 
    FROM Post 
    order by Score desc 
), b as
(
    select PostID
    , ID as CommentID 
    , ROW_NUMBER() over (partition by PostID order by ID) as RowNum
    from PostComment
) 
select * 
from a
left join b
on b.PostID = a.PostID
where b.RowNum <= 10


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Komentowany kod zgłasza błąd

  2. Zmiana sortowania w kolumnie indeksu klastrowego w SQL 2005

  3. Proste zapytanie SQLServer PIVOT/transponowane, jak pisać?

  4. Jak uzyskać dolne 50% zapytania wybierającego na serwerze SQL?

  5. ROLLBACK OBCIĄŻONY w SQL Server