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

Django - Pencarian teks lengkap - Wildcard

Saya memperluas kelas Django SearchQuery dan menimpa plainto_tsquery dengan to_tsquery . Melakukan beberapa tes sederhana, itu berhasil. Saya akan kembali ke sini jika saya menemukan kasus yang menyebabkan masalah.

from django.contrib.postgres.search import SearchQuery

class MySearchQuery(SearchQuery):
    def as_sql(self, compiler, connection):
        params = [self.value]
        if self.config:
            config_sql, config_params = compiler.compile(self.config)
            template = 'to_tsquery({}::regconfig, %s)'.format(config_sql)
            params = config_params + [self.value]
        else:
            template = 'to_tsquery(%s)'
        if self.invert:
            template = '!!({})'.format(template)
        return template, params

Sekarang saya bisa melakukan sesuatu seperti query = MySearchQuery('whatever:*')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Penetapan nilai variabel menggunakan klausa RETURNING

  2. Format waktu Rails Activerecord/Postgres

  3. Temukan nama host server PostgreSQL yang menjalankannya

  4. Parameter chunksize optimal di pandas.DataFrame.to_sql

  5. PostgreSQL - Quartz JDBC-JobStoreTX - getTriggersForJob - ArrayIndexOutOfBoundsException