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

GROUP BY trả về bản ghi đầu tiên

Tôi cho rằng bạn đang nói về điều gì đó như

SELECT  *
FROM    mytable
GROUP BY
        column

Bạn không nên sử dụng các biểu thức chưa được tổng hợp trong GROUP BY trừ khi tất cả chúng đều giống nhau trong nhóm.

Nếu bạn muốn trả về bản ghi có giá trị nhỏ nhất của một biểu thức trong một nhóm, hãy sử dụng điều này:

SELECT  mo.*
FROM    (
        SELECT  DISTINCT column
        FROM    mytable
        ) md
JOIN    mytable mo
ON      mo.id = 
        (
        SELECT  id
        FROM    mytable mi
        WHERE   mi.column = md.column
        ORDER BY
                mi.column, mi.someorder
        LIMIT 1
        )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xuất dữ liệu từ Cơ sở dữ liệu MySQL

  2. Cách tìm đường dẫn phân cấp cho biểu diễn dạng cây

  3. Wordpress không thể kết nối với máy chủ mysql

  4. python mysqldb err trên máy Mac của tôi:Thư viện không được tải:@ rpath / libmysqlclient.21.dylib

  5. Các thanh kép (||) trong SQL có nghĩa là gì?