PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Làm cách nào để lấy truy vấn con DISTINCT ON được sắp xếp theo một cột riêng biệt và thực hiện nó nhanh chóng?

Tôi tự hỏi liệu bạn có thể làm cho điều này thành công không:

select article_id, id, article_published_date
from prediction p
where p.prediction_date = (select max(p2.prediction_date)
                           from prediction p2
                           where p2.article_id = p.article_id
                          )
order by article_published_date desc;

Sau đó, sử dụng hai chỉ mục sau:

  • (article_published_date desc, prediction_date, article_id, id)
  • (article_id, prediction_date desc) .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố khi chèn bằng psycopg

  2. Cách nối chuỗi trong PostgreSQL

  3. Ansible Loves PostgreSQL

  4. Hiệu suất kém khi độ tương đồng của bát quái và tìm kiếm toàn văn được kết hợp với Q ind django bằng cách sử dụng postgres

  5. PostgreSQL có thể có ràng buộc về tính duy nhất đối với các phần tử mảng không?