Armazenar uma variável com o resultado de um SELECT CASE do MySQL?
Para isso, use SELECT CASE. Vamos primeiro criar uma tabela:
mysql> create table DemoTable
-> (
-> Num1 int,
-> Num2 int
-> );
Query OK, 0 rows affected (0.65 sec)
Insira alguns registros na tabela usando o comando insert:
mysql> insert into DemoTable values(10,30);
Query OK, 1 row affected (0.11 sec)
Exiba todos os registros da tabela usando a instrução select:
mysql> select *from DemoTable;
Saída
Isso produzirá a seguinte saída:
+------+------+
| Num1 | Num2 |
+------+------+
| 10 | 30 |
+------+------+
1 row in set (0.00 sec)
A seguir está a consulta para armazenar uma variável com o resultado de um SELECT CASE.:
mysql> select case
-> WHEN Num1=Num2 THEN "Equal"
-> WHEN Num1 > Num2 THEN "Greater"
-> WHEN Num1 < Num2 THEN "Lower" end
-> from DemoTable
-> into @s;
Query OK, 1 row affected (0.01 sec)
Vamos verificar o valor na variável acima.
mysql> select @s;
Saída
Isso produzirá a seguinte saída:
+-------+
| @s |
+-------+
| Lower |
+-------+
1 row in set (0.00 sec)