본문 바로가기
MySql

MySQL How to call a stored procedure using select statement in mysql

by 베이스 공부 2020. 11. 18.
반응형

나는 다음과 같은 호출 진술이 있습니다.

 CALL report_procedure
('2013-02-01',now(),'2015-01-01','1');

선택 쿼리에서 사용하고 싶습니다. 나는 시도했다

Select * from ( CALL report_procedure
    ('2013-02-01',now(),'2015-01-01','1'));

그러나 오류가 발생합니다. 처럼

오류 코드 : 1064. SQL 구문에 오류가 있습니다. ~을 체크 해봐 manual that corresponds to your MySQL server version for the right syntax to use near ( CALL report_procedure ( '2013-02-01', now (), '2015-01-01', '1') 3 번째 줄 0.297 초

누구든지 mysql의 Select 문에서 저장 프로 시저를 호출하는 방법을 제안 할 수 있습니까 ??

 

해결 방법

 

FROM 절에서는 프로 시저의 결과 집합을 사용할 수 없습니다. MySQL은 이것을 허용하지 않습니다.

프로 시저에서 다른 테이블 (또는 임시 테이블)을 채운 후 SELECT 명령에서 해당 테이블을 사용할 수 있습니다.

CALL report_procedure ('2013-02-01',now(),'2015-01-01','1'); -- fill temp_table
SELECT * FROM temp_table;

 

참조 페이지 https://stackoverflow.com/questions/32118033

 

 

반응형

댓글