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

Chỉ mục một phần không được sử dụng trong mệnh đề ON CONFLICT khi thực hiện nâng cấp trong Postgresql

Bạn phải sử dụng một vị từ chỉ mục để sử dụng một chỉ mục duy nhất một phần. Đọc trong tài liệu:

index_predicate

Được sử dụng để cho phép suy luận các chỉ mục duy nhất một phần. Bất kỳ chỉ mục nào thỏa mãn vị từ (thực sự không cần phải là chỉ mục bộ phận) đều có thể được suy ra. Tuân theo định dạng CREATE INDEX.

Trong trường hợp này:

INSERT INTO key_value_pair (key, value, is_active) VALUES ('temperature','20', false) 
ON CONFLICT (key) WHERE is_active
DO UPDATE
SET value = '33', is_active = true;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 cách trả về hàng có chứa ký tự không phải chữ và số trong PostgreSQL

  2. Làm thế nào để cài đặt một gói Python trên Linux để nó được tìm thấy bởi phần mở rộng PostgreSQL 13 plpython3u đã hoạt động?

  3. Triển khai và quản lý PostgreSQL 11:Mới trong ClusterControl 1.7.1

  4. Làm cách nào để khôi phục dữ liệu từ vùng chứa Docker đã bị xóa? Làm thế nào để kết nối lại nó với dữ liệu?

  5. SQL - Tạo chế độ xem từ nhiều bảng