Mysql ifnull

Mysql ifnull
“Neste post, falaremos sobre a função IFNULL em MySQL. Também abordaremos exemplos práticos de como usar a função.”

Qual é a função ifnull em mysql?

A função ifnull () no MySQL permite que você apresente e execute operações de fluxo de controle em consultas SQL.

O trecho abaixo mostra a sintaxe da função:

Ifnull (expr1, expr2)

A função permite que você passe dois argumentos. Então retornará o primeiro argumento se não for nulo e o segundo argumento, se o contrário.

Você pode passar os argumentos como valores literais ou expressões SQL suportadas. É bom lembrar que o tipo de retorno da função pode variar dependendo do contexto em que é usado.

Exemplos

Os exemplos a seguir ilustram os vários métodos de uso da função MySQL IFNULL.

mysql> selecione ifnull (1,0);

Nesse caso, a função avalia entre 1 e 0. O valor de retorno é como mostrado:

+-------------+
| ifnull (1,0) |
+-------------+
| 1 |
+-------------+
1 linha no conjunto (0.00 seg)

A consulta acima retorna 1 já que o primeiro argumento não é nulo. Lembre -se de que 0 não é tratado como um valor nulo. Por exemplo:

mysql> selecione ifnull (0,1);

Saída:

+-------------+
| ifnull (0,1) |
+-------------+
| 0 |
+-------------+
1 linha no conjunto (0.00 seg)

A consulta acima deve retornar 1 como 0 não é tratada como um valor nulo.

Outro exemplo é mostrado abaixo:

mysql> selecione ifnull (null, 1);

Neste exemplo, a função deve retornar o segundo parâmetro, pois o primeiro parâmetro contém um valor nulo.

+-----------------+
| ifnull (nulo, 1) |
+-----------------+
| 1 |
+-----------------+
1 linha no conjunto (0.00 seg)

Da mesma forma, uma corda vazia não é tratada como um valor nulo. Um exemplo de ilustração é mostrado abaixo:

mysql> selecione ifnull (", @@ sessão.fuso horário);

Nesse caso, a função deve retornar uma string vazia como mostrado:

+---------------------------------+
| ifnull (", @@ sessão.time_zone) |
+---------------------------------+
| |
+---------------------------------+
1 linha no conjunto (0.01 seg)

Como mencionado, podemos usar a função ifnull com uma expressão. Por exemplo:

mysql> selecione ifnull (1/0, 'hello');

Nesse caso, a função deve retornar o segundo parâmetro como dividido por zero retorna um valor nulo.

+----------------------+
| ifnull (1/0, 'Olá') |
+----------------------+
| Olá |
+----------------------+
1 linha no conjunto, 1 aviso (0.00 seg)

Por fim, podemos usar a função ifnull para selecionar valores de uma tabela, conforme ilustrado no exemplo abaixo:

MySQL> Criar banco de dados, se não existir, temp_db;
mysql> use temp_db;
mysql> Criar tabela temp_table (id int auto_increntry chave primária, nome varchar (100), país varchar (20));

Podemos então inserir os dados como mostrado:

mysql> inserir em temp_table (nome, país)
-> valores ('Emily', 'United-States'),
-> ('Natalia', 'Itália'),
-> ('Tobia', nulo),
-> ('Michael', nulo);

Por fim, podemos usar a função ifnull para selecionar os registros em que o valor da coluna do país não é nulo, como mostrado:

mysql> selecione o nome, ifnull (país, 'indisponível') país do temp_table;

A solicitação acima deve substituir as colunas nulas por "indisponível".

+---------+---------------+
| nome | país |
+---------+---------------+
| Emily | Estados Unidos |
| Natalia | Itália |
| Tobia | Indisponível |
| Michael | Indisponível |
+---------+---------------+
4 linhas no set (0.01 seg)

Conclusão

Neste post, você aprendeu a usar a função IFNULL no MySQL para verificar se um parâmetro específico é nulo ou não.

Obrigado pela leitura!!