Yêu cầu của tôi là nhận được thứ tự mới nhất của mỗi khách hàng và sau đó nhận được 100 hồ sơ hàng đầu.Cách chọn 100 hàng hàng đầu trong Oracle?
Tôi đã viết một truy vấn như dưới đây để nhận các đơn đặt hàng mới nhất cho từng khách hàng. Truy vấn nội bộ hoạt động tốt. Nhưng tôi không biết làm thế nào để có được 100 đầu tiên dựa trên kết quả.
SELECT * FROM (
SELECT id, client_id, ROW_NUMBER() OVER(PARTITION BY client_id ORDER BY create_time DESC) rn
FROM order
) WHERE rn=1
Bất kỳ ý tưởng nào? Cảm ơn.
Chỉ cần làm rõ - bạn có muốn 100 đầu tiên cho mỗi khách hàng hay 100 khách hàng đầu tiên không? –
Tôi muốn đặt hàng mới nhất của 100 khách hàng đầu tiên. – user2321728