Anda dapat mengekstrak nilai dengan kunci dari hstore
kolom dengan ->
operator
.
SELECT data->'Supplier' AS sup
FROM products
WHERE lower(data->'Supplier') LIKE '%tosh%';
Selain itu, seperti kebanyakan ekspresi di PostgreSQL (kecuali hal-hal seperti random()
), Anda dapat mengindeks nilai ini:
CREATE INDEX products_supplier_key ON products ((data->'Supplier'));
CREATE INDEX products_supplier_lowercase_key ON products ((lower(data->'Supplier')));
Ini akan memungkinkan PostgreSQL untuk menjawab banyak pertanyaan seperti itu menggunakan indeks alih-alih mengambil setiap baris dan memindai hstore
kolom. Lihat catatan di Jenis Indeks
tentang penggunaan indeks dengan LIKE.