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