Cómo obtener un número de caracteres de la izquierda con LEFT de SQL Server

Resumen: en este tutorial, aprenderás a usar la función LEFT()
de SQL Server para extraer una cantidad de caracteres del lado izquierdo de una cadena dada.
Introducción a la función LEFT() de SQL Server
La función LEFT()
extrae un número determinado de caracteres del lado izquierdo de una cadena proporcionada. Por ejemplo, LEFT('SQL Server', 3)
devuelve SQL.
La sintaxis de la función LEFT()
es la siguiente:
LEFT ( input_string , number_of_characters )
En esta sintaxis:
- input_string puede ser una cadena literal, una variable o una columna. El tipo de datos del resultado de
input_string
puede ser cualquier tipo de datos, exceptoTEXT
oNTEXT
, que se convierte implícitamente en VARCHAR o NVARCHAR. - number_of_characters es un entero positivo que especifica el número de caracteres de input_string que se devolverán.
La función LEFT()
devuelve un valor de VARCHAR cuando input_string
es un tipo de datos de caracteres no Unicode
o NVARCHAR si input_string es un tipo de datos de caracteres Unicode
.
Ejemplos de la función LEFT() de SQL Server
Tomemos un ejemplo del uso de la función LEFT()
para entenderlo mejor.
A) usando la función LEFT() con una cadena de caracteres literales
La siguiente declaración usa LEFT()
para devolver los tres caracteres a la izquierda de la cadena de caracteres SQL Server:
SELECT LEFT('SQL Server',3) Result_string;
Resultado:
Result_string
-------------
SQL
(1 row affected)
B) Usar la función LEFT() con una columna de tabla
El siguiente ejemplo devuelve los siete caracteres a la izquierda de cada nombre de producto en la tabla production.products de la base de datos de pruebas:
SELECT
product_name,
LEFT(product_name, 7) first_7_characters
FROM
production.products
ORDER BY
product_name;
Resultado:
C) Usando la función LEFT() con la cláusula GROUP BY
El siguiente ejemplo usa la función LEFT()
para devolver un conjunto de iniciales del nombre del producto y el número de cada producto para cada inicial:
SELECT
LEFT(product_name, 1) initial,
COUNT(product_name) product_count
FROM
production.products
GROUP BY
left(product_name, 1)
ORDER BY
initial;
Resultado:
Esta consulta se puede utilizar para la paginación alfabética en las aplicaciones.
En este tutorial, has aprendido a utilizar la función LEFT()
de SQL Server para obtener la parte izquierda de una cadena, especificando el número de caracteres que quieres consultar.