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

Đặt hàng theo lượt xem có đảm bảo thứ tự lựa chọn không?

Bạn không thể tin vào thứ tự các hàng trong bất kỳ truy vấn nào không có ORDER BY rõ ràng mệnh đề. Nếu bạn truy vấn chế độ xem có thứ tự, nhưng bạn không bao gồm ORDER BY , hãy ngạc nhiên một cách thú vị nếu chúng đúng thứ tự và đừng mong điều đó xảy ra lần nữa.

Đó là bởi vì trình tối ưu hóa truy vấn miễn phí truy cập các hàng theo những cách khác nhau tùy thuộc vào truy vấn, thống kê bảng, số lượng hàng, chỉ mục, v.v. Nếu nó biết truy vấn của bạn không có ORDER BY mệnh đề này, có thể bỏ qua thứ tự hàng để (ho) trả về các hàng nhanh hơn.

Hơi lạc đề. . .

Thứ tự sắp xếp không nhất thiết phải giống nhau giữa các nền tảng ngay cả đối với các ảnh ghép nổi tiếng. Tôi hiểu rằng việc sắp xếp UTF-8 trên Mac OS X đặc biệt kỳ lạ. (Các nhà phát triển PostgreSQL gọi nó là hỏng .) PostgreSQL dựa trên strcoll (), mà tôi hiểu dựa trên ngôn ngữ hệ điều hành.

Tôi không rõ PostgreSQL 9.1 sẽ xử lý điều này như thế nào. Trong 9.1, bạn có thể có nhiều chỉ mục, mỗi chỉ mục có một đối chiếu khác nhau . ORDER BY không chỉ định đối chiếu thường sẽ sử dụng đối chiếu các cột của bảng cơ sở bên dưới, nhưng trình tối ưu hóa sẽ làm gì với chỉ mục chỉ định một đối chiếu khác với một cột không được lập chỉ mục trong bảng cơ sở?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi có thể sử dụng các hàm Postgres để tìm các điểm bên trong một hình chữ nhật xoay có kích thước cố định không?

  2. Xuất sang CSV và Nén bằng GZIP trong postgres

  3. Django JSONField bên trong ArrayField

  4. cách tạo trình kích hoạt sự kiện để tạo bảng hoặc chọn vào

  5. Làm cách nào để tìm hiểu xem một bản nâng cấp có phải là bản cập nhật với PostgreSQL 9.5+ UPSERT hay không?