Observe que SET, para =ou :=pode ser usado como operador de atribuição. No entanto, dentro de outras instruções, o operador de atribuição deve ser :=e não =porque =é tratado como um operador de comparação em instruções não SET.
ATUALIZAR:
Além dos comentários abaixo, você também pode fazer o seguinte:
@DanielVassallo muito obrigado. A declaração "INTO" é muito útil. Eu estava procurando pela configuração do mysql var do select sem retornar o select. OBRIGADO!
Isso resulta Subquery returns more than 1 rowpara mim
timbroder 15/08/19
1
@timbroder Basta adicionar o LIMIT 1 à consulta. Enfim, sugeri uma edição para corrigir isso.
Youkko 6/09/19
11
Primeiro vamos dar uma olhada em como podemos definir uma variável no mysql
Para definir uma variável no mysql, ela deve começar com '@' como @ {variable_name} e este '{variable_name}', podemos substituí-lo pelo nome da variável.
Agora, como atribuir um valor em uma variável no mysql. Para isso, temos muitas maneiras de fazer isso
Usando a palavra-chave 'SET'.
Exemplo: - mysql> SET @a = 1;
Sem usar a palavra-chave 'SET' e usar ': ='.
Exemplo: - mysql> @a: = 1;
Usando a instrução 'SELECT'.
Exemplo: - mysql> selecione 1 em @a;
Aqui @a é uma variável definida pelo usuário e 1 será atribuído em @a.
Agora, como obter ou selecionar o valor de @ {variable_name}.
podemos usar a instrução select como
Exemplo: -
mysql> selecione @a;
mostrará a saída e mostrará o valor de @a.
Agora, como atribuir um valor de uma tabela em uma variável.
Para isso, podemos usar duas instruções como: -
@a: = (selecione emp_name do funcionário em que emp_id = 1);
selecione emp_name em @a do funcionário em que emp_id = 1;
Sempre tome cuidado, emp_name deve retornar um valor único, caso contrário, ocorrerá um erro nas instruções deste tipo.
select grop into @group from user limit 1
.Basta adicionar parênteses em torno da consulta:
fonte
Subquery returns more than 1 row
para mimPrimeiro vamos dar uma olhada em como podemos definir uma variável no mysql
Para definir uma variável no mysql, ela deve começar com '@' como @ {variable_name} e este '{variable_name}', podemos substituí-lo pelo nome da variável.
Agora, como atribuir um valor em uma variável no mysql. Para isso, temos muitas maneiras de fazer isso
Exemplo: - mysql> SET @a = 1;
Exemplo: - mysql> @a: = 1;
Exemplo: - mysql> selecione 1 em @a;
Aqui @a é uma variável definida pelo usuário e 1 será atribuído em @a.
Agora, como obter ou selecionar o valor de @ {variable_name}.
podemos usar a instrução select como
Exemplo: -
mysql> selecione @a;
mostrará a saída e mostrará o valor de @a.
Agora, como atribuir um valor de uma tabela em uma variável.
Para isso, podemos usar duas instruções como: -
@a: = (selecione emp_name do funcionário em que emp_id = 1);
selecione emp_name em @a do funcionário em que emp_id = 1;
Sempre tome cuidado, emp_name deve retornar um valor único, caso contrário, ocorrerá um erro nas instruções deste tipo.
consulte isto: - http://www.easysolutionweb.com/sql-pl-sql/how-to-assign-a-value-in-a-variable-in-mysql
fonte
Use desta maneira para que o resultado não seja exibido durante a execução do procedimento armazenado.
A pergunta:
fonte