thể trùng lặp:
How to get the record of a table who contains the maximum value?SQL select max (ngày) và giá trị tương ứng
Tôi đã có một truy vấn tổng hợp như sau:
SELECT TrainingID, Max(CompletedDate) as CompletedDate, Max(Notes) as Notes --This will only return the longest notes entry
FROM HR_EmployeeTrainings ET
WHERE (ET.AvantiRecID IS NULL OR ET.AvantiRecID = @avantiRecID)
GROUP BY AvantiRecID, TrainingID
Đó là làm việc, và trả về dữ liệu chính xác hầu hết thời gian, nhưng tôi nhận thấy một vấn đề. Trường Ghi chú được trả lại sẽ không nhất thiết khớp với bản ghi mà giá trị tối đa (completeDate) là từ. Thay vào đó, nó sẽ là một chuỗi dài nhất? Hoặc cái có giá trị ASCII cao nhất? SQL Server làm gì trong trường hợp liên kết giữa hai bản ghi? Tôi thậm chí không chắc chắn. Những gì tôi muốn nhận được là trường ghi chú từ bản ghi tối đa (completeDate). Làm thế nào tôi nên nhận được về việc này?
Đã hoàn thànhNgày không phải là Ngày giờ? – Frobzig
Đây là một DateTime. Không có vấn đề với lĩnh vực đó, nhưng với Ghi chú. – MAW74656
ghi chú tối đa hoặc mọi ghi chú cho 'max (completedDate)'? – Marc