Làm sao để tạo index trong PostgreSQL? Khi nào nên dùng index BTREE, GIN, hay HASH?
Làm sao để tạo index trong PostgreSQL? Khi nào nên dùng index BTREE, GIN, hay HASH?
Để tạo index trong PostgreSQL, bạn sử dụng câu lệnh `CREATE INDEX` như sau:
```sql
CREATE INDEX index_name ON table_name(column_name);
BTREE là kiểu mặc định và sử dụng trong hầu hết các trường hợp vì nó hiệu quả cho các điều kiện so sánh (=
, <
, >
, <=
, >=
) và tìm kiếm thứ tự.\nGIN phù hợp với các kiểu dữ liệu phức tạp như mảng, JSONB. Rất hiệu quả cho tìm kiếm toàn văn và truy vấn có chứa toán tử như @>
.\nHASH chủ yếu dùng cho việc tìm kiếm chính xác trên các giá trị đơn lẻ, nhưng ít được sử dụng hơn do không hỗ trợ tìm kiếm theo thứ tự và có những hạn chế về khả năng khôi phục sau...
middle