Database
 sql >> Base de Dados >  >> RDS >> Database

Como substituir parte de uma string em T-SQL

Problema:


Você gostaria de selecionar linhas que contenham uma string começando com um de um determinado grupo de caracteres.

Exemplo:


Nosso banco de dados tem uma tabela chamada gamer com dados no id e user colunas.
id usuário
1 super-homem
2 magna
3 Lucy
4 está
5 al

Vamos encontrar todos os dados para jogadores cujos nomes de usuário começam com 'a', 'b', 'r' ou 's'.

Solução:

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

Aqui está o resultado:
id usuário
1 super-homem
4 está
5 al

Discussão:


Se você deseja filtrar linhas contendo uma string que corresponda a um determinado padrão, use a cláusula WHERE com o operador LIKE. A cláusula WHERE é usada para filtrar registros que atendem às condições declaradas. Depois de WHERE, você adiciona um nome de coluna ou uma expressão, seguido pelo operador (por exemplo, LIKE) e o(s) valor(es) de comparação. Depois de LIKE, você insere o padrão para corresponder (no nosso exemplo, WHERE user LIKE '[abrs]%' ). O padrão pode conter caracteres e curingas.

Um dos curingas do T-SQL é '%', que representa zero ou mais caracteres desconhecidos. O curinga de sublinhado ( _ ) indica um caractere. Os colchetes ( [] ) delimitam o padrão a ser correspondido; este padrão pode conter uma ou mais letras ou números. A string de destino pode corresponder a um ou mais caracteres entre colchetes.

Em nosso exemplo, o padrão '[abrs]%' denota que o nome de usuário deve começar com a, b, r ou s. Após o caractere inicial, pode haver zero ou mais caracteres porque usamos o curinga %.

Os usuários com id=2 e id=3 não são exibidos; seus nomes começam com 'l' e 'm' e, portanto, não correspondem ao padrão que selecionamos.