PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

funkcja postgres unaccent vs transliteracja RoR

Bardzo stary post, ale pracuję nad problemem podobnym do OP. Chcemy mieć możliwość wyszukiwania nazwy i transliteracji, aby uzyskać lepsze wyniki. Jednak w naszych wersjach Postgres i rails znak transliteruje to samo na „ss”.

Chciałem tylko podzielić się moimi odkryciami na wypadek, gdyby przydał się innym, którzy natkną się na ten post.

W szynach 5.2:

irb(main):001:0> ActiveSupport::Inflector.transliterate('ß')
=> "ss"

W postgresie 9.6 otrzymuję:

db-test=# SELECT unaccent('ß') AS unaccent_name;
 unaccent_name 
---------------
 ss
(1 row)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd bazy danych Postgres drop:pq:nie można usunąć aktualnie otwartej bazy danych

  2. PostgreSQL:Utwórz tabelę, jeśli nie istnieje AS

  3. Zapowiedź repmgr 2.0RC2

  4. Jak utworzyć pojedynczy punkt końcowy dla konfiguracji replikacji PostgreSQL za pomocą HAProxy?

  5. „O” w ORDBMS:Dziedziczenie PostgreSQL