PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cara menanyakan nilai dengan wildcard di PostgreSQL hstore

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.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. XPath1 di SQL/XML, elemen hitungan kembali kosong

  2. Apa argumen kedua dalam fungsi array_length()?

  3. Dengan sqlalchemy cara mengikat secara dinamis ke mesin database berdasarkan permintaan

  4. Dapatkan pohon orang tua + anak dengan pg-promise

  5. PostgreSQL:Menghubungkan ke instance Postgres dari jarak jauh menggunakan perintah psql