Tôi đang cố gắng tạo ra một bảng kết quả với ngày khóa học đã hoàn thành cuối cùng cho mỗi mã khóa học, cũng như mã khóa học hoàn thành cuối cùng cho mỗi nhân viên . Dưới đây là câu hỏi của tôi:MAX() và MAX() TRÊN TÙY CHỌN bằng cách tạo lỗi 3504 trong Truy vấn Teradata
SELECT employee_number,
MAX(course_completion_date)
OVER (PARTITION BY course_code) AS max_course_date,
MAX(course_completion_date) AS max_date
FROM employee_course_completion
WHERE course_code IN ('M910303', 'M91301R', 'M91301P')
GROUP BY employee_number
truy vấn này tạo ra các lỗi sau:
3504 : Selected non-aggregate values must be part of the associated group
Nếu tôi loại bỏ các MAX() OVER (PARTITION BY ...) dòng, truy vấn thực hiện tốt, vì vậy Tôi đã bị cô lập vấn đề với dòng đó, nhưng sau khi tìm kiếm các diễn đàn và internet tôi không thể nhìn thấy những gì tôi đang làm sai. Có ai giúp được không?
Bởi vì bạn đang sử dụng VỀ với tham chiếu đến MAX, SQL thấy những như chức năng phân tích - không phải tổng hợp. –