InStr en SQL Server

12/10/2005 - 22:26 por Juan M Afan de Ribera | Informe spam
Hola a todos,

estoy pasando las tablas y consultas de una base de datos Access a otra SQL
Server. No he tenido ningún problema hasta el momento y todo parece que ha
ido bien. Salvo en una consulta que utiliza el método InStr. InStr devuelve
un número que especifica la posición de la primera aparición de una cadena
en otra, en caso de encontrarla. Este método no existe para SQL Server, como
ya debéis saber. ¿Qué otro método podría utilizar en vez de InStr? La manera
en que lo uso en la consulta es en la parte del Where, más o menos así:

SELECT (una serie de campos)
FROM ([Una serie de tablas])
WHERE InStr(Tabla.Campo1,[parametro])>0
Or InStr(Tabla2.Campo2,[parametro])>0 ...

etc.

Muchas gracias.

Saludos,
Juan M Afan de Ribera
[MVP Access]
http://www.mvp-access.com/accessvbafaq
http://www.mvp-access.com/juanmafan

Preguntas similare

Leer las respuestas

#1 Gustavo Larriera [MVP]
12/10/2005 - 23:56 | Informe spam
Puedes usar CHARINDEX y PATINDEX. Lee los detalles en tus Books Online.

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.
"Juan M Afan de Ribera" wrote in message
news:
Hola a todos,

estoy pasando las tablas y consultas de una base de datos Access a otra
SQL Server. No he tenido ningún problema hasta el momento y todo parece
que ha ido bien. Salvo en una consulta que utiliza el método InStr. InStr
devuelve un número que especifica la posición de la primera aparición de
una cadena en otra, en caso de encontrarla. Este método no existe para SQL
Server, como ya debéis saber. ¿Qué otro método podría utilizar en vez de
InStr? La manera en que lo uso en la consulta es en la parte del Where,
más o menos así:

SELECT (una serie de campos)
FROM ([Una serie de tablas])
WHERE InStr(Tabla.Campo1,[parametro])>0
Or InStr(Tabla2.Campo2,[parametro])>0 ...

etc.

Muchas gracias.

Saludos,
Juan M Afan de Ribera
[MVP Access]
http://www.mvp-access.com/accessvbafaq
http://www.mvp-access.com/juanmafan



Respuesta Responder a este mensaje
#2 Juan M Afan de Ribera
13/10/2005 - 00:15 | Informe spam
Hola Gustavo.

Había encontrado el CHARINDEX pero no me salía porque la comparación la
hacía en unos campos de tipo ntext. Pero ahora que me has apuntado la otra
función, PATINDEX, asunto resuelto (al menos la sintaxis :-S).

Muchas gracias.

Saludos,
Juan M Afan de Ribera
[MVP Access]
http://www.mvp-access.com/accessvbafaq
http://www.mvp-access.com/juanmafan


"Gustavo Larriera [MVP]" escribió en el mensaje
news:
Puedes usar CHARINDEX y PATINDEX. Lee los detalles en tus Books Online.

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.
"Juan M Afan de Ribera" wrote in message
news:
Hola a todos,

estoy pasando las tablas y consultas de una base de datos Access a otra
SQL Server. No he tenido ningún problema hasta el momento y todo parece
que ha ido bien. Salvo en una consulta que utiliza el método InStr. InStr
devuelve un número que especifica la posición de la primera aparición de
una cadena en otra, en caso de encontrarla. Este método no existe para
SQL Server, como ya debéis saber. ¿Qué otro método podría utilizar en vez
de InStr? La manera en que lo uso en la consulta es en la parte del
Where, más o menos así:

SELECT (una serie de campos)
FROM ([Una serie de tablas])
WHERE InStr(Tabla.Campo1,[parametro])>0
Or InStr(Tabla2.Campo2,[parametro])>0 ...

etc.

Muchas gracias.

Saludos,
Juan M Afan de Ribera
[MVP Access]
http://www.mvp-access.com/accessvbafaq
http://www.mvp-access.com/juanmafan







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