sql >> Databasteknik >  >> RDS >> Sqlserver

Hur väljer man bara de första raderna för varje unikt värde i en kolumn?

Ett väldigt enkelt svar om du säger att du inte bryr dig vilken adress som används.

SELECT
    CName, MIN(AddressLine)
FROM
    MyTable
GROUP BY
    CName

Om du vill ha den första enligt, säg, en "infogad" kolumn så är det en annan fråga

SELECT
    M.CName, M.AddressLine,
FROM
    (
    SELECT
        CName, MIN(Inserted) AS First
    FROM
        MyTable
    GROUP BY
        CName
    ) foo
    JOIN
    MyTable M ON foo.CName = M.CName AND foo.First = M.Inserted


  1. Ändra en befintlig kolumn till en beräknad kolumn i SQL Server (T-SQL-exempel)

  2. PostgreSQL strömmande replikering - en djupdykning

  3. Hur frågar jag mellan två datum med MySQL?

  4. Fel när QUERY-paketet skickades