1
resposta

[Dúvida] Maiúsculo e minúsculo

Como faço para ela entender o texto na ' ' sendo maiúsculo ou minúsculo o resultado da pesquisa ? por exemplo se eu por 'livro' mas esta no banco 'Livro' e mesmo assim ele encontrar

1 resposta

Bom dia Luis! Tudo bem com você?

Vou te explicar na prática. Acompanhe comigo.

1) Criando a tabela livros com alguns registros:

CREATE TABLE livros (
    id INTEGER PRIMARY KEY,
    titulo TEXT
);

INSERT INTO livros (titulo) VALUES ('Livro A');
INSERT INTO livros (titulo) VALUES ('livro B');
INSERT INTO livros (titulo) VALUES ('LIVRO C');

2) Para não haver diferenciação entre maiúsculas e minúsculas, temos algumas maneiras, como utilizar a função LOWER() ou COLLATE NOCASE.

SELECT * FROM livros WHERE LOWER(titulo) = LOWER('livro a');
SELECT * FROM livros WHERE titulo COLLATE NOCASE = 'livro a';
Ícone de sugestão Para saber mais:

Um pouco mais sobre as funções utilizadas:

  • A função LOWER() converte todo o texto para minúsculas antes da comparação, garantindo que valores escritos de forma diferente sejam tratados como iguais. Saiba mais na documentação.
  • O modificador COLLATE NOCASE permite que o banco de dados faça comparações sem diferenciar maiúsculas e minúsculas, sem precisar modificar os valores originais. Saiba mais na documentação.

Se precisar padronizar os dados, LOWER() pode ser uma boa opção. Já se quiser manter a formatação original, mas sem diferenciação ao comparar, o COLLATE NOCASE pode ser a melhor escolha.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado