Este día estuve realizando unas investigaciones de como usar CHARINDEX() en cadenas realmente complejas y me encontre con un post realizado Por Joseph Arquímedes Collado bastante interesante, el cual decidi reutilizar, ya que el planteamiento y solución del mismo es bastante completo. Puede ver el post original aquí.
Problema:
Tengo una consulta que me tiene entrampado hace varios días; existe un campo donde se guardan indistintamente datos de tipo texto, numérico y decimales del cual debo obtener solo la parte entera y sus respectivos decimales.
Ejemplo:
- RM*NORMAL-207.41;S3;P1-2
- RM*SAVER1-52.87;S3;P2
Se ha identificado que la parte que debo tomar debería empezar después del guion medio ( – ) hasta antes del punto y coma ( ; ) , ese sería el patrón pero no se como aplicarlo para obtener la solución.
Solución:
Crear una función escalar para obtener el valor númerico. En este caso, he modificado la función para que tambien se envie el prefijo (-) y sufijo (;) de la cadena y asi tener una función mas dinámica al momento de obtener un valor numérico.
Bueno, esto seria todo
Espero les haya gustado (n_n)/
Comentarios
Publicar un comentario