Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để chỉ chọn các hàng đầu tiên cho mỗi giá trị duy nhất của một cột?

Một câu trả lời rất đơn giản nếu bạn nói rằng bạn không quan tâm địa chỉ nào được sử dụng.

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

Nếu bạn muốn đầu tiên theo, chẳng hạn, một cột "được chèn" thì đó là một truy vấn khác

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách DENSE_RANK () hoạt động trong SQL Server

  2. Hệ thống quản lý cơ sở dữ liệu quan hệ và cơ sở dữ liệu (RDBMS) là gì

  3. Cách tạo mối quan hệ 1-1 thực sự trong SQL Server

  4. cách tìm kích thước hàng trong bảng

  5. SQL Server Thay đổi tên cơ sở dữ liệu