> 데이터 베이스 > MySQL 튜토리얼 > 여러 값으로 여러 MySQL 행을 효율적으로 업데이트하는 방법은 무엇입니까?

여러 값으로 여러 MySQL 행을 효율적으로 업데이트하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2025-01-17 11:21:12
원래의
490명이 탐색했습니다.

How to Efficiently Update Multiple MySQL Rows with Different Values?

MySQL 다중 행 레코드의 다양한 값을 효율적으로 업데이트

소개

다양한 값으로 여러 행을 업데이트하는 것은 어려울 수 있으며, 특히 복잡한 WHERE 조건의 경우 더욱 그렇습니다. 이 문서에서는 가장 일반적으로 사용되는 두 가지 방법인 다중 문 쿼리와 조건부 업데이트를 자세히 설명하여 이 프로세스를 단순화하는 것을 목표로 합니다.

방법 1: 다중문 쿼리

다중 문 쿼리를 사용하면 하나의 쿼리에서 여러 UPDATE 명령을 실행할 수 있습니다. 이 방법은 간단하고 간단하지만 대규모 데이터 세트에는 다루기 어려울 수 있습니다. 제공하신 예시는 다음과 같이 구현할 수 있습니다.

<code class="language-sql">UPDATE table_users
SET cod_user = '622057', date = '12082014'
WHERE user_rol = 'student' AND cod_office = '17389551';

UPDATE table_users
SET cod_user = '2913659', date = '12082014'
WHERE user_rol = 'assistant' AND cod_office = '17389551';

UPDATE table_users
SET cod_user = '6160230', date = '12082014'
WHERE user_rol = 'admin' AND cod_office = '17389551';</code>
로그인 후 복사

방법 2: CASE 문을 이용한 조건부 업데이트

조건부 업데이트를 사용하면 조건에 따라 다른 행에 다른 값을 적용할 수 있습니다. 제공하신 예는 다음과 같이 바꿔 쓸 수 있습니다.

<code class="language-sql">UPDATE table_users
SET cod_user = CASE
    WHEN user_role = 'student' THEN '622057'
    WHEN user_role = 'assistant' THEN '2913659'
    WHEN user_role = 'admin' THEN '6160230'
END,
date = '12082014'
WHERE user_role IN ('student', 'assistant', 'admin') AND
cod_office = '17389551';</code>
로그인 후 복사

이 방법은 특히 대규모 데이터 세트의 경우 다중 문 쿼리보다 더 효율적입니다. 또한 여러 레코드 행을 업데이트하는 더 명확하고 명확한 방법을 제공합니다.

참고:

잠재적인 문제를 방지하려면 일관적인 데이터베이스 기반 형식으로 날짜를 저장해야 합니다.

위 내용은 여러 값으로 여러 MySQL 행을 효율적으로 업데이트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿