0

1から1000までのIDのテーブルを取得しました。テーブルから行を選択し、宣言した2つの変数に結果を挿入するにはどうすればよいですか?

このようなもの:

Select from table1 where id = 1 or id = 27 into var1, var2
4

2 に答える 2

1

それは可能ですが、次の2つの制限を確認する必要があります。

  1. 結果セットには、1行だけが含まれている必要があります
  2. 行には正確に2つの列が含まれている必要があります

これを参照してください:

SELECT 'foo', 4 FROM DUAL INTO @a, @b;

SELECT @a, @b;
+------+------+
| @a   | @b   |
+------+------+
| foo  |    4 |
+------+------+

そしてまた可能:

SELECT MIN(id), MAX(Population) FROM world.City INTO @min_id, @max_pop;

SELECT name, population FROM world.Country LIMIT 1 INTO @name, @pop;
于 2012-07-18T14:49:01.677 に答える
1
SELECT
    @var1 := MAX(IF(id = 1, some_field, NULL)),
    @var2 := MAX(IF(id = 27, some_field, NULL))
FROM table
WHERE id IN (1,27);
于 2012-07-18T14:56:33.590 に答える