>  기사  >  데이터 베이스  >  변수를 사용하여 MySQL 필드를 동적으로 선택하고 업데이트하려면 어떻게 해야 합니까?

변수를 사용하여 MySQL 필드를 동적으로 선택하고 업데이트하려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-23 11:02:34153검색

How Can I Dynamically Select and Update MySQL Fields Using Variables?

변수를 기반으로 한 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.