How can I loop through all rows of a table? (MySQL) 다음 코드를 게시했습니다 :구문 오류 동안이 질문에 대한 허용 대답에서
INSERT INTO table_B(ID, VAL) VALUES(ID, VAL) FROM table_A LIMIT i,1;
내가 저를 허용하는 첫 번째 변수로 table_A에서 선택합니다
SELECT VAL FROM table_A INTO variableVal LIMIT i, 1;
INSERT INTO table_B(ID, VAL) VALUES(ID, variableVal);
를하지만 나에게 구문 오류가 있습니다 :이처럼 재사용
을#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT i, 1;
다음은 전체 코드입니다
DROP PROCEDURE IF EXISTS ROWPERROW;
DELIMITER ;;
CREATE PROCEDURE ROWPERROW()
BEGIN
DECLARE i INT DEFAULT 0;
DECLARE factionCount INT DEFAULT 0;
DECLARE factionName varchar(100);
SELECT COUNT(*) FROM faction INTO factionCount;
SET i = 0;
WHILE i < factionCount DO
SELECT name FROM faction INTO factionName LIMIT i, 1;
//SELECT name FROM faction LIMIT i, 1 INTO factionName; (doesn't work either)
INSERT INTO groups_group(name) values (factionName);
//going to do something else with factionName
SET i = i + 1;
END WHILE;
End;
;;
call ROWPERROW();
당신이'factionName'에 대해 수행 할 수 있습니까? 루프 및 커서없이 할 수 있습니다. – peterm