私はストアドプロシージャを書くことを学んでいます。私は私のmysqlストアドプロシージャに3つのselectステートメントを持っています。 2番目と3番目のselect文には、その上位select文の結果が必要です。 私は次のように書きました。しかし成功しなかった。mysqlストアドプロシージャ内の複数のselect文
CREATE DEFINER=`root`@`localhost` PROCEDURE `SPTeam`(IN date_x date, OUT emplist3 varchar(200))
BEGIN
SELECT
(
select emp_event.employee_id as emplist1
from emp_event
where emp_event.date = date_x
),
(
select emp_position.employee_id as emplist2
from emp_position
where FIND_IN_SET(emp_position.employee_id, emplist1)=0
AND emp_position.position = "Cameraman"
),
(
select employee.name as emplist3
from employee
where employee.id IN (emplist2)
);
END
これは私が得たエラーです。
Error Code: 1054. Unknown column 'emplist1' in 'where clause'
誰か私を修正してください。 はあなたが変数に選択した結果のそれぞれを格納し、これらの変数に選択を行うことができU.
※何も意味がありません。例外? – Blank
従業員IDを取得するためにIN文の2番目のクエリを3番目に繰り返す必要があります – cichy
もう1つのことは、subselectingフィールド – cichy