변수를 기반으로 한 MySQL의 동적 필드 선택
데이터베이스 프로그래밍에서는 변수 값을 기반으로 필드를 동적으로 선택해야 하는 경우가 많습니다. 이는 필드 이름을 알 수 없거나 동적으로 변하는 시나리오에서 특히 유용할 수 있습니다.
문자열 변수를 사용한 필드 선택
질문:인가요? 문자열 변수에 이름이 저장된 필드를 선택할 수 있습니다. MySQL?
SELECT 'fieldname' FROM table;
답변: 예, 문자열 변수를 사용하여 MySQL 문을 동적으로 구성하는 것이 가능합니다.
SET @fieldname = 'name'; SELECT @fieldname FROM table;
동적 업데이트를 사용하여 필드 변수
질문: MySQL에서 필드 이름을 나타내는 변수를 사용하여 테이블 업데이트를 수행하려면 어떻게 해야 합니까?
SET fieldname = NEW.`name`; UPDATE table SET fieldname = 1;
답변 : MySQL에서는 임의의 문자열을 필드 이름으로 직접 사용할 수 없습니다. 그러나 MySQL의 PREPARED STATEMENTS 기능을 사용하여 해결 방법을 사용할 수 있습니다.
SELECT columnname FROM queries INTO @colname; SET @table = 'mytable'; SET @s = CONCAT('SELECT ', @colname, ' FROM ', @table); PREPARE stmt FROM @s; EXECUTE stmt;
이를 사용하면 @colname 변수에 저장된 값을 기반으로 동적 필드 이름을 사용하여 준비된 명령문을 생성할 수 있습니다.
위 내용은 변수를 사용하여 MySQL 필드를 동적으로 선택하고 업데이트하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!