私はSELECTクエリ内でいくつかの計算をしようとしています。私が結合されたテーブルからデータを収集するためにSUM
のような関数を使い始めるまで、これはうまくいきます。MySQLのユーザ変数とSUM関数
簡体例:
SET @a = 1;
SELECT @a := SUM(1 + 1) AS sum, @a
結果:
+------+------+ | sum | @a | +------+------+ | 2 | 1 | +------+------+
私は@aがここ2であることを期待したいです。
その他の例:@bは、クエリの前に設定されていないため、
SELECT @b := SUM(1 + 1) AS sum, @b;
+------+------+ | sum | @b | +------+------+ | 2 | NULL | +------+------+
が今では、NULLです。
変数がSUM関数の結果で上書きされないようです。これを修正する方法はありますか?
本当に達成したいもの –
@AnkitSharma:SELECTクエリ内の計算。だから、私は結果を使用する必要があります。 'SUM(1 + 1)'を計算します。 'SUM(1 + 1)'を何度も繰り返し使用する代わりに、変数_once_に格納したいと思います。 '@ a'を実行し、後で' @ a'を再利用します。 – Alec
'SET @b = SUM(1 + 1)'を使用してください –