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

Chọn cột riêng biệt cùng với một số cột khác trong MySQL

Sử dụng truy vấn con, bạn có thể nhận được id cao nhất cho mỗi tên, sau đó chọn phần còn lại của các hàng dựa trên đó:

SELECT * FROM table
WHERE id IN (
  SELECT MAX(id) FROM table GROUP BY name
)

Nếu bạn muốn, hãy sử dụng MIN(id) để nhận bản ghi đầu tiên cho từng tên thay vì tên cuối cùng.

Nó cũng có thể được thực hiện với INNER JOIN chống lại truy vấn con. Vì mục đích này, hiệu suất phải tương tự và đôi khi bạn cần tham gia trên hai các cột từ truy vấn con.

SELECT
  table.*
FROM 
  table
  INNER JOIN (
    SELECT MAX(id) AS id FROM table GROUP BY name
  ) maxid ON table.id = maxid.id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ví dụ YEARWEEK () - MySQL

  2. Quản lý MySQL bằng phpMyAdmin trên Debian 5 (Lenny)

  3. Cách tạo và duy trì Cơ sở dữ liệu MySQL trong cPanel

  4. Tương đương với hàm SQLServer SCOPE_IDENTITY () trong mySQL?

  5. Hiệu suất MySQL:Giới thiệu về THAM GIA trong SQL