집 >데이터 베이스 >MySQL 튜토리얼 >저장 프로시저를 사용하여 MySQL 열 이름을 동적으로 반복하려면 어떻게 해야 합니까?
MySQL 테이블의 열 이름을 동적으로 반복
이 질문은 저장된 테이블을 사용하여 MySQL 테이블의 열 이름을 반복하는 방법을 탐색합니다. 원시 SQL로 작성된 프로시저. 목표는 열 이름 목록을 얻은 다음 각 열 이름을 변수로 기반으로 저장 프로시저를 실행하는 것입니다.
열 이름 검색
열 이름을 검색하려면 MySQL 테이블에서 SHOW COLUMNS FROM
열 이름 반복
열 이름이 검색되면 저장할 수 있습니다. 커서를 사용하여 루프에서. 커서는 결과 집합을 행 단위로 탐색할 수 있는 반복자입니다. 예는 다음과 같습니다.
DECLARE col_names CURSOR FOR SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'tbl_name' ORDER BY ordinal_position;
이 커서는 지정된 테이블에서 열 이름을 선택하고 위치에 따라 정렬하며 커서 이름을 col_names로 지정합니다.
루프 실행
열 이름을 반복하고 저장 프로시저를 실행하려면 다음을 사용하세요. 루프:
SET i = 1; the_loop: LOOP IF i > num_rows THEN CLOSE col_names; LEAVE the_loop; END IF; FETCH col_names INTO col_name; //do whatever else you need to do with the col name SET i = i + 1; END LOOP the_loop;
이 루프는 FETCH 문을 사용하여 다음 열 이름을 변수 col_name으로 검색합니다. 루프 내부에서는 열 이름에 따라 필요한 모든 작업을 수행할 수 있습니다.
위 내용은 저장 프로시저를 사용하여 MySQL 열 이름을 동적으로 반복하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!