SUBSTRING SQL SERVER

Hola javeros anónimos hoy hablaremos de la función SUBSTRING en SQL SERVER, esta función en particular es muy útil si se está trabajando con datos administrativos (RFC, CURP), pero de que forma lo podemos utilizar? Sencillo.
SUBSTRING ( valor, inicio_expresión, longitud_expresión)
Donde: · valor Es una expresión de tipo character, binary, text, ntext o image. · Inicio_expresión Es un entero o una expresión bigint que especifica dónde comienzan los caracteres devueltos. Si inicio_expresión es menor que 1, la expresión devuelta comenzará en el primer carácter especificado de valor. En este caso, el número de caracteres que se devuelve es el valor de la suma de inicio_expresion y longitud_expresión 0, el que sea mayor. Si inicio_expresión es mayor que el número de caracteres de la expresión de valor, se devuelve una expresión de longitud cero. · Longitud_expresion Es un entero positivo o una expresión bigint que especifica cuántos caracteres de valor se van a devolver. Si longitud_expresión es negativo, se genera un error y finaliza la instrucción. Si la suma de inicio_expresión y longitud_expresión es mayor que el número de caracteres de valor, se devuelve la expresión de valor completa que empieza en inicio_expresión. Pss y eso en que me sirve ? EJEMPLO: Bien supongamos que tenemos el CURP y nos piden sacar los datos administrativos, bueno esto lo podemos hacer de la siguiente manera: Sabemos que las primeras 4 posiciones nos hablan de nombre y apellido entonces la sintaxis quedaría de la siguiente manera:
SUBSTRING([CURP],1,4)
Donde 1 significa que tomemos la primer posición de nuestra cadena y el 4 significa que tomemos 4 caracteres. Eso lo podemos hacer para descomponer todo el curp
SELECT

[PATERNO]

,[MATERNO]

,[NOMBRE]

,[RFC]

,CURP

,SUBSTRING([CURP],1,4) AS NOMBRE

,SUBSTRING([CURP],5,2) AS AÑO

,SUBSTRING([CURP],7,2) AS MES

,SUBSTRING([CURP],9,2) AS DIA

,SUBSTRING([CURP],11,1) AS SEXO

,SUBSTRING([CURP],12,2) AS ENTIDAD_NACIMIENTO

FROM [PERSONA]

De esta forma tendríamos los datos administrativos sin necesidad de tenerlos, como fecha de nacimiento y entidad de nacimiento, lamento no ponerles ejemplos de resultados pero no puedo exponer a mis lectores : p Salu2.

Post a Comment

Artículo Anterior Artículo Siguiente