Nevadí, problém jsem našel.
Plánovač dotazů byl chytřejší než moje testovací sada hraček; vzhledem k tomu, že většina řádků odpovídá dotazu, bylo provedeno sekvenční skenování.
Pokud to zkusím s ilike '%nd 0%'
místo toho se žádné řádky neshodují a sestavy EXPLAIN ANALYZE Bitmap Index Scan on test3_value_trgm_idx
správně.
Takže normalizace původního JSONB tímto způsobem funguje. Ale také se pokusím najít a porovnat jiný způsob, pomocí regulárních výrazů přes TEXT
, abyste nemuseli vytvářet a udržovat další tabulku.