sql >> Base de Datos >  >> RDS >> Database

Cómo reemplazar parte de una cadena en T-SQL

Problema:

Le gustaría seleccionar filas que contengan una cadena que comience con uno de un grupo de caracteres determinado.

Ejemplo:

Nuestra base de datos tiene una tabla llamada gamer con datos en el id y user columnas.

id usuario
1 superhombre
2 magnus
3 Lucía
4 stan
5 ali

Busquemos todos los datos de los jugadores cuyos nombres de usuario comienzan con 'a', 'b', 'r' o 's'.

Solución:

SELECT id, 
  user
FROM gamer
WHERE user LIKE '[abrs]%';

Aquí está el resultado:

id usuario
1 superhombre
4 stan
5 ali

Discusión:

Si desea filtrar las filas que contienen una cadena que coincide con un patrón dado, use la cláusula WHERE con el operador LIKE. La cláusula WHERE se utiliza para filtrar registros que cumplen las condiciones establecidas. Después de DONDE, agrega un nombre de columna o una expresión, seguido del operador (por ejemplo, LIKE) y los valores de comparación. Después de LIKE, ingresa el patrón para que coincida (en nuestro ejemplo, WHERE user LIKE '[abrs]%' ). El patrón puede contener caracteres y comodines.

Uno de los comodines de T-SQL es '%', que representa cero o más caracteres desconocidos. El comodín de subrayado (_) indica un carácter. Los corchetes ( [] ) encierran el patrón para que coincida; este patrón puede contener una o más letras o números. La cadena de destino puede coincidir con uno o más de los caracteres entre paréntesis.

En nuestro ejemplo, el patrón '[abrs]%' denota que el nombre de usuario debe comenzar con a, b, r o s. Después del carácter inicial, puede haber cero o más caracteres porque hemos usado el comodín %.

Los usuarios con id=2 y id=3 no se muestran; sus nombres comienzan con 'l' y 'm' y, por lo tanto, no coinciden con el patrón que hemos seleccionado.