PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

fonction postgres sans accent vs translittération RoR

Poste très ancien mais je travaille sur un problème similaire à l'OP. Nous voulons être en mesure de rechercher un nom et de translittérer pour donner de meilleurs résultats. Cependant, avec nos versions de Postgres et de rails, le caractère se translittère de la même manière en 'ss'.

Je voulais juste partager mes découvertes au cas où cela pourrait être utile à d'autres qui tomberaient sur ce message.

Dans rails 5.2 :

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

Dans postgres 9.6, j'obtiens :

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