web-dev-qa-db-ja.com

クエリの結果をMySQLの変数に設定します

これは単純な構文であるべきです。たとえば、MySQLで変数を設定して、クエリの結果と等しくしようとしています。

SET @variable1 = SELECT salary FROM employee_info WHERE emp_id = 12345678;

基本的には、その従業員の給与を変数として保存し、それを操作して追加できるようにします。

私はそれを動作させることができないため、これの正しい構文は何でしょうか。

27
NateSHolland
SELECT salary INTO @variable1 FROM employee_info WHERE emp_id = 12345678 LIMIT 1;

または

SET @variable1 = (SELECT salary FROM employee_info WHERE emp_id = 12345678 LIMIT 1);

SELECT @variable1;
60
Damith

単一のクエリで複数の変数を埋めることもできます。

SELECT salary, salary_group INTO @var1, @var2 FROM employee_info WHERE emp_id = 12345678;
12
Olias

正しい構文に非常に近いです。ここにあります:

SET @variable1 = (SELECT salary FROM employee_info WHERE emp_id = 12345678);

そして、次のように変数を出力します。

SELECT @variable1;
3
Adam Fili

クエリの結果をMySQLの変数に設定する

Select  @Amount1:=  Amount FROM table where id=57703;
2
kavitha Reddy
SELECT @code:=salary FROM employee_info WHERE emp_id = 12345678;

給与を確認するには、

SELECT @code;

給与の結果は、codeで初期化されます。

詳細

2
Ravi Parekh

これを使って

SELECT weight INTO @x FROM p_status where tcount=['value'] LIMIT 1;

テスト済みで正常に動作しています...

1
Aman Maurya
select @variable1 := salary FROM employee_info WHERE emp_id = 12345678;
0
Rahul