Saltar al contenido

Funcion substring en sql con ejemplos

La funcion Substring o SUBSTR en myslq, esta es de las mas utiles para manipular para manejar cadenas de caracteres en este articulo aprenderas como manipular y combinar esta funcion con otras funcion como es la charindex ademas cual es la principal diferencia entre la funcion MID y substring.

En este articulo aprenderas como funcionas substring? para que usarlo ? ademas de ejemplos aplicados a tu dia laboral. asi que no deberias perdertelo hasta el final!!

Índice

    Funciones de cadenas de texto que deberias evaluar

    Listado de funciones para cadenas de texto

    La funcion Replace en Mysql , sql server y postgresql algo interesante que deberias ver.

    Funcion para aplicar un formato de moneda a una columna en sql server

    Como funciona la función Substring de sql?

    La función SUBSTRING en SQL nos permite extraer una porción de una string, o cadena de caracteres. Esto es muy útil para realizar diversas operaciones sobre las strings, como concatenarlas, dividirlas, etc.

    Una de las funciones mas útiles para manipular cadenas de caracteres es la función substring, esta nos permite extraer una parte de una cadena. La sintaxis es la siguiente:

    SUBSTRING (expresión, inicio [, longitud])

    donde:

    • expresión: es el campo o la columna que queremos evaluar
    • inicio: es el número de caracteres a saltar desde el comienzo de la cadena, empezando por cero.
    • longitud (opcional): es el número de caracteres que se devolverán a partir del inicio. Si no se especifica, la función devuelve todos los caracteres hasta el final de la cadena.

    Cuales situaciones puedo usar esta función?

    • – Quiero extraer el nombre de una persona de un campo que contiene nombre y apellidos.
    • – Obtener la fecha de un timestamp
    • – Extraer la extensión de un archivo
    • – Extraer el dominio de una url
    • – Etc.

    Ejemplo substr con columnas

    idNombreApellidoPosición
    1LorenzoMartinezJunior Sales Assistant
    2MiguelPerezSenior Sales Specialist
    3JoseFernandezJunior Sales Manager

    Esta tabla de empleados podemos crearla usando el comando create table e insertar los registros con el sql insert. Para los fines estaremos presentando algunso ejemplos con esta tabla. estos ejemplos podras descargarlo al final del articulo.

    Usando una columna de una tabla

    SELECT Nombre,

         Apellido, SUBSTRING(Posicion, 1, 5) AS employee_initials

    FROM employees;

    Especifico la columna apellido en la función. Obtener las 5 primeras letras de la posicion del empleado esto le indica al SGBD que debe tomar desde primera poscion el carácter con una longitud de cinco caracteres.

    Veamos algunos ejemplos práctico del uso de la función MySQL SUBSTR() 

    La función SUBSTRING() devuelve una subcadena de cualquier cadena que desee. Puede escribir la cadena explícitamente.

    Ejemplo simple para extraer cadena de texto

    SELECT SUBSTRING(‘SQL Server SUBSTRING’, 5, 6) result;

    – El resultado de este query será: «Server»

    Segun verificamos esta funcio le dice al Sgbd quiero extraer un texto «SQL Server SUBSTRING». Los argumentos dicen que la funcion substring requiere estan desde la posicion cinco y con una longitud de seis caracteres.

    Sql substring charindex , ejemplo de como usar

    Queremos extraer el nombre de la persona y la fecha de nacimiento a partir del campo «datos». para esto utilizamos la función CHARINDEX() busca una subcadena en una cadena y devuelve la posición.

    Para ello, podemos hacer lo siguiente:

    1. SELECT
      • SUBSTRING(datos, 0, CHARINDEX(‘|’, datos)) AS nombre,
      • SUBSTRING(datos, CHARINDEX(‘|’, datos)+11, 100) AS fecha_nacimiento
    2. FROM
      • personas;

    El resultado de este query será:

    nombre fecha_nacimiento

    ———- ——————

    Ana 01/01/1980

    Pedro 02/02/1981

    Juan 03/03/1982

    En este caso tenemos de una misma cadena de texto dos columnas con la funcion CHARINDEX y substring combinadas.

    Como podemos observar, en el ejemplo anterior hemos usado la función CHARINDEX para obtener la posición del carácter «|» en el campo «datos». Esto nos ha permitido extraer los datos que queríamos de forma más sencilla.

    Substring Con formato de fechas

    Si quiere aprender a sacar fechas en sql en los formatos que necesitas es importante que veas este link ahora. La funcion Substring en sql server es util pero aprende la utilidad de la función Convert formatear fechas es necesario para trabajar en sql server o en caso de que uses Mysql deberias ver la funcion date_format.

    Mid o Substring en sql , Cual es la diferencia entre ambas?

    La función Mid en SQL nos permite extraer una porción de una string, o cadena de caracteres. Entonces quiere decir esto que tenemos dos funciones que hacen exactamente lo mismo. para este caso es importante resaltar con un ejemplo la principal diferencia. Mientras que en e sql server o postgresql usamos Substring La función equivalente para mysql utilizamos MID.

    Mid vs substring ejemplo

    SELECT MID(column_name,start,length) AS some_name FROM table_name;

    La principal diferencia es que en mid la cadena de caracteres inicia en 1 mientras que en substring inicia en 0. es requerido la posición de inicio (comienza en 1) pero la longitud puede ser dejada en blanco y esto devolvera en resto de la cadena.

    En Conclusion

    Esta función es genérica para Sql server ,Mysql y Postgress ademas esta función puede ser usada en conjunto con las clausulas SELECT, WHERE , GROUP BY Y ORDER BY es importante resaltar que en mysql funcionan los mismo ejemplos pero el nombre de la funcion es SUBSTR().

    Recuerda que si tienes alguna duda o comentario, puedes dejarlo en los comentarios.

    ¡Hasta la próxima!