Thread: Seaching without accents

Seaching without accents

From
"Augusto Cesar Castoldi"
Date:

How can I configure postgreSQL to search without acents?

 

Like:

 

Table “test”

Clumns: name , values:

Test

Test

tést

Tést

 

 

SELECT * FROM test WHERE name LIKE “tes%”

 

And it should return values “tést, test”

 

Thanks,

 

Augusto

Re: Seaching without accents

From
James M Moe
Date:
Augusto Cesar Castoldi wrote:
> How can I configure postgreSQL to search without acents?
>
> Table “test”
>
> Clumns: name , values:
> Test
> Test
> tést
> Tést
>
   Since those are actually different characters that only look the
same, you would have to use another approach:
     select * from test where name like 't_st%';
or
     select * from test where name like 'tést%' or name like 'test%' ...


--
jimoe at sohnen-moe dot com

Re: Seaching without accents

From
"Augusto Cesar Castoldi"
Date:
Ok, but I know that is an away to do it automatic

Without using the function TO_ASCII

Thanks,

Augusto

-----Original Message-----
From: Marco Lazzeri [mailto:marcomail@noze.it]
Sent: Wednesday, January 28, 2004 11:51 AM
To: Augusto Cesar Castoldi
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] Seaching without accents

Il mer, 2004-01-28 alle 13:42, Augusto Cesar Castoldi ha scritto:
> How can I configure postgreSQL to search without acents?

You have to write queries using TO_ASCII function and 'LATIN 1'
characters encoding.

Example:

SELECT * FROM my_table WHERE TO_ASCII(value, 'LATIN 1') =
TO_ASCII('Vàlùé', 'LATIN 1');

Cheers,
--
Marco Lazzeri



Re: Seaching without accents

From
Marco Lazzeri
Date:
Il mer, 2004-01-28 alle 13:42, Augusto Cesar Castoldi ha scritto:
> How can I configure postgreSQL to search without acents?

You have to write queries using TO_ASCII function and 'LATIN 1'
characters encoding.

Example:

SELECT * FROM my_table WHERE TO_ASCII(value, 'LATIN 1') =
TO_ASCII('Vàlùé', 'LATIN 1');

Cheers,
--
Marco Lazzeri


Re: Seaching without accents

From
Bernd Helmle
Date:
Augusto Cesar Castoldi wrote:

>
>
> SELECT * FROM test WHERE name LIKE “tes%”
>
>
>
> And it should return values “tést, test”
>

Why not using a regular expression, like this:



yomama=# select * from test;
  name
------
  test
  tést
  tèst
  tast
(4 rows)

yomama=# select * from test where name ~ '^t[eéè]s';
  name
------
  test
  tést
  tèst
(3 rows)


   Bernd


Re: Seaching without accents

From
"scott.marlowe"
Date:
On Wed, 28 Jan 2004, Augusto Cesar Castoldi wrote:

> Ok, but I know that is an away to do it automatic
>
> Without using the function TO_ASCII

I think certain locales will do this.  Haven't used them, just seen them
mentioned.