sql >> データベース >  >> RDS >> PostgreSQL

Postgresqlでアップサートを実行しているときにONCONFLICT句で部分インデックスが使用されない

    部分的に一意のインデックスを使用するには、インデックス述語を使用する必要があります。ドキュメントを読む:

    index_predicate

    部分的に一意のインデックスを推測できるようにするために使用されます。述語を満たすすべてのインデックス(実際には部分インデックスである必要はありません)を推測できます。 CREATEINDEX形式に従います。

    この場合:

    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. RStudioをSQLServerに接続する

    2. proxysql-admin代替-ClusterControlProxySQLGUI

    3. MariaDBでのBIT_LENGTH()のしくみ

    4. MariaDBでのSYSDATE()のしくみ