Pular para o conteúdo principal
Documentos
FunçõesExpressõesKeywordsDeclaraçõesCláusulas

Função UPPER() do MySQL

A função `UPPER()` do MySQL é usada para converter uma cadeia de caracteres em letras maiúsculas. É útil para garantir uma capitalização uniforme, especialmente ao realizar comparações sem distinção entre maiúsculas e minúsculas ou formatar saídas. A função `UPPER()` faz parte das funções de cadeia de caracteres do MySQL e está disponível em todas as versões padrão do MySQL.

Uso

A função `UPPER()` é normalmente usada quando você precisa converter dados de texto em letras maiúsculas para fins de consistência ou comparação. É aplicado a uma string ou coluna que contém dados de texto.

sql
UPPER(string)

Nessa sintaxe, `string` é o valor do texto ou da coluna a ser convertido em maiúsculas.

Exemplos

1. Conversão básica de letras maiúsculas

sql
SELECT UPPER('hello world');

Este exemplo converte a string `'hello world'` em `'HELLO WORLD'`.

2. Conversão de dados de coluna

sql
SELECT UPPER(first_name) AS uppercase_name
FROM employees;

Aqui, os valores da coluna `first_name` da tabela `employees` são convertidos em maiúsculas, e o resultado é chamado de `uppercase_name`.

3. Usando UPPER() com a cláusula WHERE

sql
SELECT * 
FROM customers
WHERE UPPER(country) = 'CANADA';

Nesse exemplo, a função `UPPER()` converte os valores da coluna `country` em maiúsculas para realizar uma comparação sem distinção entre maiúsculas e minúsculas com a string `'CANADA'`.

4. Usando UPPER() em uma condição JOIN

sql
SELECT a.id, a.name, b.category
FROM products a
JOIN categories b ON UPPER(a.category_name) = UPPER(b.category_name);

Este exemplo demonstra o uso de `UPPER()` em uma condição `JOIN` para garantir que os nomes das categorias sejam comparados de forma insensível a maiúsculas e minúsculas em ambas as tabelas.

Dicas e práticas recomendadas

  • Comparação consistente. Use `UPPER()` para padronizar dados de texto para comparações sem distinção entre maiúsculas e minúsculas em cláusulas `WHERE`.
  • Evite conversões desnecessárias. Aplique `UPPER()` somente quando necessário para evitar sobrecarga adicional de computação.
  • Considerações sobre o índice. Lembre-se de que a aplicação de `UPPER()` a colunas indexadas pode afetar o desempenho, pois pode impedir que o MySQL use o índice de forma eficiente. Considere o uso de colunas geradas para fins de indexação se for necessária uma conversão consistente de casos.
  • Use pseudônimos para maior clareza. Ao converter dados de coluna, use aliases de coluna para indicar claramente a finalidade dos dados transformados.

Funções relacionadas

Para entender como `UPPER()` se encaixa nas funções de string do MySQL, veja também a função `LOWER()` para converter strings em minúsculas.

Aprimoramento de SQL para iniciantes

Adquira as habilidades de SQL para interagir com seus dados e consultá-los.
Comece a aprender de graça