Postgres ile jsonb sütununda tam metin aramasını nasıl kullanabilirim?


Yanıtlar:



3

Bunun pratik olup olmadığı çok açık olmasa da şunları yapabilirsiniz:

CREATE TABLE t
(
    id SERIAL PRIMARY KEY,
    the_data jsonb
) ;

CREATE INDEX idx_t_the_data_full_text 
    ON t 
    USING gist ( (to_tsvector('English', the_data::text))) ;

Ve sonra sorgula:

SELECT
    the_data
FROM
    t
WHERE
    to_tsvector('English', the_data::text) @@ plainto_tsquery('English', 'Action') ;

Bunun yalnızca nesne değerlerini değil tüm nesne anahtarlarınızı da bulacağını unutmayın . Ve ne kadar metin ile sınırlı kalacaksınız

dbfiddle burada

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.