Hãy tưởng tượng bạn có một thực thể trong kho dữ liệu Google App Engine, lưu trữ liên kết cho người dùng ẩn danh. Bạn muốn thực hiện các truy vấn sau đây SQL, mà không được hỗ trợ:Python: DISTINCT trên bộ kết quả GQuery (GQL, GAE)
SELECT DISTINCT user_hash FROM links
Thay vào đó bạn có thể sử dụng:
user = db.GqlQuery("SELECT user_hash FROM links")
Làm thế nào để sử dụng Python một cách hiệu quả nhất để lọc kết quả, vì vậy nó trả về một tập kết quả DISTINCT? Làm thế nào để đếm kết quả DISTINCT?
Một đối tượng được đặt là một bộ sưu tập không có thứ tự các đối tượng có thể băm riêng biệt. (...) Mới trong phiên bản 2.4. http://www.python.org/doc/2.5.2/lib/types-set.html –
Đặt là ổn nếu số lượng bản ghi tương đối nhỏ. Nhưng nếu bạn có nhiều gazillions của hồ sơ trong kho dữ liệu, nó sẽ là khá kém hiệu quả! Một chiến lược tốt hơn sẽ là tính toán trước và lưu trữ kết quả tại thời gian chèn/cập nhật. – sudarkoff