source

MySQL의 쿼리에서 반환된 각 행에 대한 쿼리 호출

nicesource 2023. 8. 27. 09:39
반응형

MySQL의 쿼리에서 반환된 각 행에 대한 쿼리 호출

'직원' 표에 있는 모든 직원에게 'KPI' 표에 있는 SELECT 쿼리를 호출해야 하는 문제가 있습니다.커서를 사용하여 'employee' 테이블의 각 값을 읽습니다.

DELIMITER $$
CREATE PROCEDURE sp6 ()
BEGIN
    DECLARE finished INTEGER DEFAULT 0;
    DECLARE temp varchar(100) DEFAULT "";

    DEClARE cs1 CURSOR FOR SELECT `full_name` FROM `employee`;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;
    OPEN cs1;
    fLoop: LOOP
        FETCH cs1 INTO temp;
        IF finished = 1 THEN 
            LEAVE fLoop;
      END IF;

      [FROM KPI TABLE, QUERY TO GET KPI OF EMPLOYEE WITH NAME 'temp']

 END LOOP fLoop;
 CLOSE cs1;

END$$
DELIMITER;

하지만 오류 메시지가 표시됩니다.식이 없습니다. (위치 25에서 "ON" 근처)

누가 제가 잘못한 부분을 도와주시겠습니까?감사합니다.

여기에는 커서가 필요하지 않습니다.그냥 가입.KPI그리고.employeefull_name.

SELECT k.*
       FROM `KPI` k
            INNER JOIN `employee` e
                       ON e.`full_name` = k.`full_name`;

언급URL : https://stackoverflow.com/questions/60897130/call-a-query-for-each-row-returned-by-a-query-in-mysql

반응형