tl; dr:Django cho phép bạn kiểm soát nhóm theo mệnh đề nhưng nó giới hạn nó hoạt động trên tất cả các phiên bản của SQL nên tôi không thể làm những gì mình muốn.
Nó đã được chỉ ra cho tôi rằng truy vấn ban đầu mà tôi đang cố gắng tạo với django ORM thực sự không hợp lệ cho tất cả các phiên bản SQL. Đây là bản cập nhật của truy vấn mà tôi đang tìm kiếm:
SELECT *, MAX("run"."start_time")
FROM "run"
LEFT OUTER JOIN "project" ON ("run"."project_id" = "project"."id")
GROUP BY "project"."id"
Nếu một người cố gắng chọn một cái gì đó không có trong GROUP BY trong MSSQL, họ sẽ thực sự gặp lỗi. Vì vậy, đối với tôi, có vẻ như django thực sự không nên để tôi tạo một truy vấn như thế này và về cơ bản tôi đang cố gắng giải quyết vấn đề của mình không chính xác.