sourcecode

MySQL에서 테이블 이름이 변수인 경우 선택하는 방법

copyscript 2022. 9. 22. 00:12
반응형

MySQL에서 테이블 이름이 변수인 경우 선택하는 방법

테이블명을 취득하는 경우는, 다음과 같은 설정 변수로부터 취득할 필요가 있습니다.

SET @ID_1 = (SELECT ID FROM `slider` LIMIT 0,1);
SET @Cat = (SELECT Category FROM `slider` LIMIT 0,1);
select * from @Cat where ID = @ID_1

하지만 MySQL에서 오류를 출력할 수 있습니다.누군가 어떻게 해야 하는지 보여줄 수 있을까요?MySQL에서는 아직 걸음마 단계이기 때문입니다.

당신은 준비된 진술서를 가지고 이것을 해야 할 것이다.예를 들어 다음과 같습니다.

SET @s = CONCAT('select * from ', @Cat, ' where ID = ', @ID_1); 

PREPARE stmt1 FROM @s; 
EXECUTE stmt1; 
DEALLOCATE PREPARE stmt1; 

몇 시간 동안 디버깅을 한 후에 이 솔루션을 얻었습니다.

첨부한 이미지는 100% mysql로 동작합니다.

언급URL : https://stackoverflow.com/questions/8809943/how-to-select-from-mysql-where-table-name-is-variable

반응형