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

cờ `` hoạt động '' hay không?

Bạn phân vùng bảng trên cờ hiện hoạt, để các bản ghi hoạt động nằm trong một phân vùng và các bản ghi không hoạt động nằm trong phân vùng kia. Sau đó, bạn tạo một dạng xem hiện hoạt cho mỗi bảng mà tự động có bộ lọc hoạt động trên đó. Công cụ truy vấn cơ sở dữ liệu tự động giới hạn truy vấn trong phân vùng có các bản ghi đang hoạt động trong đó, nhanh hơn nhiều so với việc sử dụng chỉ mục trên cờ đó.

Đây là một ví dụ về cách tạo một bảng được phân vùng trong Oracle. Oracle không có các kiểu cột boolean, vì vậy tôi đã sửa đổi cấu trúc bảng của bạn cho mục đích Oracle.

CREATE TABLE people
(
   id       NUMBER(10),
   name     VARCHAR2(100),
   active   NUMBER(1)
)
PARTITION BY LIST(active)
(
   PARTITION active_records VALUES (0)
   PARTITION inactive_records VALUES (1)
);

Nếu bạn muốn, bạn có thể đặt mỗi phân vùng trong các không gian bảng khác nhau. Bạn cũng có thể phân vùng các chỉ mục của mình.

Ngẫu nhiên, điều này dường như lặp lại cái này câu hỏi, với tư cách là một người mới, tôi cần hỏi, quy trình xử lý các bản sao không mong muốn là gì?

Chỉnh sửa: Như được yêu cầu trong nhận xét, đã cung cấp một ví dụ để tạo một bảng được phân vùng trong Oracle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tìm nạp kết quả từ hàng MySQL có nhiều cột cùng tên với PHP?

  2. Làm cách nào để tìm các cặp duy nhất từ ​​hai cột trong SQL?

  3. Tự động tăng không đặt lại trong MySQL

  4. Sử dụng các câu lệnh đã chuẩn bị với mysql trong python

  5. Trình kết nối Python MySQL - tìm thấy kết quả chưa đọc khi sử dụng fetchone