Principales respuestas
encontrar palabra en descricpion

Pregunta
-
como puedo distinguier en sql algo como esto
tengo la palabra dentro de una descripción como puedo obtener esta palabra si esta escrita asi ISOCIANATO
'ISOCIANATO' ó 'ISOCYANATO' ó 'ISOCYANATu'
lo tengo dentro de una descripcipon por loq ue debería ser algo asi,
'%ISOC%ANAT%'
claro que esto estaría mal pero debe ir un % adelnate y atrás
saludos.
Respuestas
-
- Editado Willams Morales martes, 19 de julio de 2016 21:51
- Marcado como respuesta Augusto C martes, 19 de julio de 2016 22:10
Todas las respuestas
-
Revisa la documentación del predicado LIKE verás las posibilidades de uso de los comodines:
Puedes hacerlo de dos maneras:
DECLARE @T table (Descripcion varchar(100)); INSERT INTO @T VALUES ('ISOCIANATO'), ('ISOCIANATO'), ('ISOCYANATO'), ('ISOCYANATu') SELECT * FROM @T WHERE Descripcion LIKE 'ISOC[IY]ANAT[Ou]'; SELECT * FROM @T WHERE Descripcion LIKE 'ISOC_ANAT_';
En la primera consulta restringes a que los caracteres sean [I o Y] y [O y u] respectivamente, en la segunda consulta no importa el caracter incluido en la cadena, lo usas según requieras.
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios. -
Revisa la documentación del predicado LIKE verás las posibilidades de uso de los comodines:
Puedes hacerlo de dos maneras:
DECLARE @T table (Descripcion varchar(100)); INSERT INTO @T VALUES ('ISOCIANATO'), ('ISOCIANATO'), ('ISOCYANATO'), ('ISOCYANATu') SELECT * FROM @T WHERE Descripcion LIKE 'ISOC[IY]ANAT[Ou]'; SELECT * FROM @T WHERE Descripcion LIKE 'ISOC_ANAT_';
En la primera consulta restringes a que los caracteres sean [I o Y] y [O y u] respectivamente, en la segunda consulta no importa el caracter incluido en la cadena, lo usas según requieras.
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios. -
- Editado Willams Morales martes, 19 de julio de 2016 21:51
- Marcado como respuesta Augusto C martes, 19 de julio de 2016 22:10
-
El guión bajo representa cualquier caracter individual.
perfecto gracias y aprovechando su conocimiento ,habrá alguna forma de validar los espacios en blanco tambien
si en excel es algo asi
(CONTAR.SI(AM162;"*TOLUEN? *ISOC?ANAT?*")
en sql sería algo como
%TOLUEN_ %ISOC_ANAT_%
Pero falta el espcio en blanco entre .....EN?(espacioenblanco)*ISOC......
-
No me está saliendo esta consulta
DECLARE @T table (Descripcion varchar(100)); INSERT INTO @T VALUES ('COLORURO DE ISOCIANATO'), ('TOLUENO ISOCIANATO'), ('MARIA DE ISOCYANATO'), ('ISOCYANATu') --SELECT * FROM @T WHERE Descripcion LIKE 'ISOC[IY]ANAT[Ou]'; SELECT * FROM @T WHERE Descripcion LIKE '%TOLUEN_[]ISOC_ANAT_%';
-
¿Deseas obtener sólo el segundo registro? Entre corchetes va el caracter de espacio en blanco, no vacío.
DECLARE @T table (Descripcion varchar(100)); INSERT INTO @T VALUES ('COLORURO DE ISOCIANATO'), ('TOLUENO ISOCIANATO'), ('MARIA DE ISOCYANATO'), ('ISOCYANATu') SELECT * FROM @T WHERE Descripcion LIKE '%TOLUEN_[ ]ISOC_ANAT_%';