집 >데이터 베이스 >MySQL 튜토리얼 >단일 SQL 쿼리로 여러 데이터베이스 레코드를 업데이트하려면 어떻게 해야 합니까?
데이터베이스에서 많은 레코드를 업데이트하는 것은 시간이 많이 걸리고 시간이 많이 걸릴 수 있습니다. 개별적으로 수행하는 경우 반복적인 작업입니다. 프로세스를 간소화하기 위해 단일 SQL 쿼리로 여러 레코드를 동시에 업데이트할 수 있습니다.
한 가지 접근 방식은 다중 테이블 업데이트 구문을 사용하면 단일 명령문으로 여러 테이블을 조인하고 해당 열을 수정할 수 있습니다.
예를 들어 다음을 고려하세요. 다음 예:
UPDATE config t1 JOIN config t2 ON t1.config_name = 'name1' AND t2.config_name = 'name2' SET t1.config_value = 'value', t2.config_value = 'value2';
이 쿼리에서는 t1 및 t2라는 레이블이 붙은 구성 테이블의 두 인스턴스를 조인합니다. ON 절은 조인 기준을 정의하여 업데이트할 레코드가 특정 config_name 값과 일치하는지 확인합니다. SET 절 내에서 t1과 t2 모두에 대한 config_value 열에 새 값을 할당합니다.
또 다른 옵션은 조건부 업데이트를 사용하는 것입니다. , 지정된 조건에 따라 다른 값을 설정할 수 있습니다.
다음을 고려하세요. 쿼리:
UPDATE config SET config_value = CASE config_name WHEN 'name1' THEN 'value' WHEN 'name2' THEN 'value2' ELSE config_value END WHERE config_name IN('name1', 'name2');
여기에서는 CASE 문을 사용하여 config_name 값을 기반으로 config_value 열의 새 값을 정의합니다. 이름 'name1' 및 'name2'의 경우 그에 따라 값이 업데이트됩니다. 그렇지 않으면 현재 값이 유지됩니다. WHERE 절은 주어진 기준과 일치하는 config_name 값을 가진 레코드로 업데이트를 제한합니다.
위 내용은 단일 SQL 쿼리로 여러 데이터베이스 레코드를 업데이트하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!