"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Você pode combinar LIKE e IN para consultas SQL mais poderosas?

Você pode combinar LIKE e IN para consultas SQL mais poderosas?

Publicado em 15/11/2024
Navegar:483

Can You Combine LIKE and IN for More Powerful SQL Queries?

Combinando LIKE e IN para consultas SQL avançadas

Em SQL, o operador LIKE é frequentemente usado para correspondência de padrões, enquanto o operador IN permite para combinar um valor com uma lista de valores específicos. Embora esses operadores tenham finalidades diferentes, é possível combiná-los para criar consultas mais poderosas.

Vamos considerar o seguinte cenário: você tem uma tabela com uma coluna chamada "company_id" e deseja selecionar todas as linhas onde o "company_id" começa com strings específicas, como "M510", "M615", "M515" e "M612".

Uma abordagem pode ser usar o Operador LIKE da seguinte maneira:

SELECT * FROM tablename WHERE company_id LIKE 'M510%'

No entanto, isso corresponderá exatamente apenas às linhas que começam com "M510". Para combinar várias strings, você teria que criar várias consultas.

Usando substring com IN

Uma solução mais eficiente é usar uma substring com o operador IN. A função SUBSTRING() extrai um número especificado de caracteres de uma string, começando em uma determinada posição.

Para nosso cenário, podemos usar a seguinte consulta:

SELECT * FROM tablename
WHERE SUBSTRING(company_id, 1, 4) IN ('M510', 'M615', 'M515', 'M612')

Esta consulta extrairá os primeiros 4 caracteres da coluna "company_id" e verificará se ele existe na lista de valores especificados na cláusula IN. Combinando a substring com IN, podemos obter a correspondência de padrões desejada sem precisar fazer um loop em uma matriz de strings.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3