2013-05-08 86 views
1

可以在存儲過程Mysql中的單個查詢中設置兩個參數值嗎? 我想要兩個不同的參數作爲輸出,我不想去控制它。SELECT INTO MySQL聲明中的多個變量

Declare v_first_name varchar(100); 
Declare v_last_name Varchar(100); 

SET p_email_id = 'some_email_id'; 

/* 
instead of this i want to laod result in single query 
Set v_first_name=(Select first_name From user_master Where email_id=p_email_id); 
Set v_last_name=(Select last_name From user_master Where email_id=p_email_id); 

*/ 

if flag1=1 then 
Select 1 As 'Result',v_first_name As 'first_name',v_last_name As 'last_name'; 
else  
Select 0 As 'Result',v_first_name As 'first_name',v_last_name As 'last_name'; 
End if; 

任何幫助?

select first_name INTO @v_first_name , last_name INTO @v_last_name From user_master Where email_id=p_email_id; ==== **Not Working** 

回答

8

INTO後僅僅列舉出來用逗號:

SELECT a, b, c 
INTO v_a, v_b, v_C 
FROM ... 
+0

尼斯的答案,它爲我工作.. !! – 2013-09-16 12:13:39

+0

不錯的答案,它爲我工作,謝謝..! – 2013-09-16 12:14:38

+0

Hi @siride。如何可以在下一個選擇查詢中獲取這些值(SELECt id,name,v_a作爲value1,v_b作爲value2 FROM table WHERE id = 1) – Kailas 2014-11-03 05:58:01