Like con acentos

10/10/2005 - 18:44 por Rodrigo | Informe spam
Hola. Necesito saber como puedo utilizar la función LIKE, para no descrimine
por acentos, o sea, que si busco "Jose", me de como resultado tanto "Jose",
como "José" o viceversa, si escribo "José", me devuelva "Jose" como "José".
Me tiene complicado ese asunto, me sería de gran utilidad la ayuda.

Gracias.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
10/10/2005 - 18:59 | Informe spam
Rodrigo,

Una posible solucion seria usar la clausula collate. La collation de mi bd
es Latin1_General_CI_AS (Latin1-General, case-insensitive, accent-sensitive,
kanatype-insensitive, width-insensitive), asi que podemos usar
Latin1_General_CI_AI que es accent-insensitive.

Ejemplo:

use northwind
go

select DATABASEPROPERTYEX('Northwind' , 'Collation')
go

declare @s varchar(25)

set @s = 'José'

select
c1
from
(
select 'José'
union all
select 'Jose'
) as t1(c1)
where
c1 like @s collate Latin1_General_CI_AI

set @s = 'Jose'

select
c1
from
(
select 'José'
union all
select 'Jose'
) as t1(c1)
where
c1 like @s collate Latin1_General_CI_AI
go


AMB

"Rodrigo" wrote:

Hola. Necesito saber como puedo utilizar la función LIKE, para no descrimine
por acentos, o sea, que si busco "Jose", me de como resultado tanto "Jose",
como "José" o viceversa, si escribo "José", me devuelva "Jose" como "José".
Me tiene complicado ese asunto, me sería de gran utilidad la ayuda.

Gracias.
Respuesta Responder a este mensaje
#2 Gustavo Larriera [MVP]
11/10/2005 - 04:24 | Informe spam
Puedes modificar el collation de la columna para que almacene caracteres
insensibles a los tildes. Para hacer eso usa ALTER TABLE ... ALTER COLUMN
... COLLATE SQL_Latin1_General_CP1_CI_AI

Gustavo Larriera
Uruguay LatAm
Blog: http://sqljunkies.com/weblog/gux/
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Rodrigo" wrote in message
news:
Hola. Necesito saber como puedo utilizar la función LIKE, para no
descrimine
por acentos, o sea, que si busco "Jose", me de como resultado tanto
"Jose",
como "José" o viceversa, si escribo "José", me devuelva "Jose" como
"José".
Me tiene complicado ese asunto, me sería de gran utilidad la ayuda.

Gracias.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida