sql >> Database >  >> RDS >> Sqlserver

Deelnemen aan MAX datumrecord in groep

In SQL Server 2005+ :

SELECT  *
FROM    job j
OUTER APPLY
        (
        SELECT  TOP 1 *
        FROM    jobstatus js
        WHERE   js.jobid = j.jobid
        ORDER BY
                js.date DESC
        ) js

In SQL Server 2000 :

SELECT  *
FROM    job j
LEFT JOIN
        jobstatus js
ON      js.id =
        (
        SELECT  TOP 1 id
        FROM    jobstatus jsi
        WHERE   jsi.jobid = j.jobid
        ORDER BY
                jsi.date DESC
        )

Deze zoekopdrachten behandelen mogelijke duplicaten op Date correct.



  1. Hoe selecteer ik efficiënt de vorige niet-null-waarde?

  2. CASE-instructie gebruiken in MySQL

  3. Sequentiële doorvoersnelheden en feeds

  4. Verschil tussen LIKE en ~ in Postgres