MySQL – Comparando Strings

Muitas vezes é necessário fazer comparação entre dois campos, para saber se são iguais, menor ou maior.

É muito comum fazer este tipo de comparação usando uma linguagem server-side como php, asp ou java. Em geral usando a expressão equals ou ==.

Mas o que muita gente não sabe é que esta comparação pode ser feita já na consulta SQL. Usando a função STRCMP (String Comparation).

Essa função retorna 3 valores numéricos. Zero quando os valores forem iguais. Um quando o primeiro valor for maior e menos um (-1) quando o segundo valor for maior que o primeiro.

Vejamos um exemplo:

mysql> SELECT STRCMP('text', 'text2');
-> -1
mysql> SELECT STRCMP('text2', 'text');
-> 1
mysql> SELECT STRCMP('text', 'text');
-> 0

Basicamente ilustrando seria isso. Você só precisa mudar os valores entre as aspas para o nome das colunas que deseja comparar.

Pode fazer isso usando colunas de tabelas diferentes que possuem conexões através de JOINs.

Agora é com você. Sucesso!



Sobre o Autor

MarioSAM é faixa preta 2Dan de Taekwondo. Entusiasta do marketing online. Especulador do mercado financeiro. Projetista web com certificação SCJP da SUN. Com 10 anos de experiência em desenvolvimento de sistemas.