Eu tenho os seguintes dados em uma tabela
PriceOrderShipped
PriceOrderShippedInbound
PriceOrderShippedOutbound
No SQL, preciso escrever uma consulta que procure
por uma string em uma tabela. Ao procurar por uma string, ela deve ignorar maiúsculas e minúsculas. Para a consulta SQL mencionada abaixo
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%'
fornece todos os dados acima, enquanto
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%'
não dá.
Por exemplo. quando procuro por 'PriceOrder' ou 'priceOrder', ele funciona, mas 'priceorder' ou 'Priceorder' não funciona. Eu tentei com a consulta abaixo usando COLLATE, mas não está funcionando. Deixe-me saber onde estou errado.
SELECT DISTINCT COL_NAME FROM myTable WHERE
COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'
sql
sql-server
case-insensitive
sql-like
ignore-case
onda de choque
fonte
fonte
Respostas:
Use algo como isto -
ou
fonte
UPPER
ouLOWER
caso e usando a opçãoLIKE
para pesquisar?Consulte esta pergunta semelhante e responda à pesquisa com distinção entre maiúsculas e minúsculas - SQL Server ignorar maiúsculas e minúsculas em uma expressão where
Tente usar algo como:
fonte
Como isso.
No postgresql.
fonte
Você provavelmente deve usar
SQL_Latin1_General_Cp1_CI_AS_KI_WI
como seu agrupamento. O que você especificar em sua pergunta é explicitamente sensível a maiúsculas e minúsculas.Você pode ver uma lista de agrupamentos aqui .
fonte