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

Chọn thông tin từ bảng trong đó hàng có ngày tối đa

SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group

Điều đó hoạt động để có được ngày tối đa..hãy quay trở lại dữ liệu của bạn để lấy các cột khác:

Select group,max_date,checks
from table t
inner join 
(SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group)a
on a.group = t.group and a.max_date = date

Tham gia bên trong có chức năng như bộ lọc để chỉ lấy bản ghi tối đa.

FYI, tên cột của bạn quá kinh khủng, không sử dụng các từ dành riêng cho các cột (nhóm, ngày tháng, bảng).



  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ụ về CTE và đệ quy của SQL Server

  2. Quyền SELECT bị từ chối trên đối tượng 'Địa chỉ', cơ sở dữ liệu 'CNET_85731', lược đồ 'dbo'

  3. Cách Dừng / Khởi động Hàng đợi Thư Cơ sở dữ liệu trong SQL Server (T-SQL)

  4. lấy tất cả các con lồng nhau cho một id cha

  5. Cách tạo Ràng buộc duy nhất tổng hợp trong SQL Server 2005