সুতরাং আমার কাছে একটি jsonb
কলাম রয়েছে যার এগুলির মতো এন্ট্রি রয়েছে: https://pastebin.com/LxJ8rKk4
পুরো জেসনব কলামে একটি পূর্ণ-পাঠ্য অনুসন্ধান কার্যকর করার কোনও উপায় আছে কি?
সুতরাং আমার কাছে একটি jsonb
কলাম রয়েছে যার এগুলির মতো এন্ট্রি রয়েছে: https://pastebin.com/LxJ8rKk4
পুরো জেসনব কলামে একটি পূর্ণ-পাঠ্য অনুসন্ধান কার্যকর করার কোনও উপায় আছে কি?
উত্তর:
পোস্টগ্রেএসকিউএল 10 জেএসএনবি-তে সম্পূর্ণ পাঠ্য অনুসন্ধানের সূচনা করে
CREATE INDEX ON table
USING gin ( to_tsvector('english',jsondata) );
জেএসএনে নতুন এফটিএস সূচীকরণ বাক্যাংশ অনুসন্ধানের সাথে কাজ করে এবং জেএসএন-মার্কআপ এবং কী উভয় ছাড়িয়ে যায়।
আপনি এটি করতে পারেন, যদিও এটি ব্যবহারিক তা এতটা পরিষ্কার নয়:
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))) ;
এবং তারপরে এটিকে জিজ্ঞাসা করুন:
SELECT
the_data
FROM
t
WHERE
to_tsvector('English', the_data::text) @@ plainto_tsquery('English', 'Action') ;
মনে রাখবেন, এই হবে এছাড়াও আপনার সব বস্তুর এটি কী না শুধুমাত্র মান । এবং আপনি কত পাঠ্য সীমাবদ্ধ থাকবেন
এখানে ডিবিফিডল