2012-07-18 4 views
0

1에서 1000까지의 ID 표가 있습니다. 표에서 행을 선택하고 선언 한 두 변수에 결과를 삽입하려면 어떻게해야합니까?MySql은 두 개의 변수로 선택합니다.

이 같은 일부 일 :

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

답변

1

당신이 할 수 있지만 다음과 같은 두 가지 한계를 확인해야이 :

  1. 결과 집합이 정확히 하나 개의 행을 포함해야
  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; 
+0

내 대답은 실제로 질의에 잘 관련되지 않습니다. 푸간이있다. –

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); 
관련 문제