MySQL 일괄 삽입 및 업데이트를 배우기 위한 팁은 무엇입니까?
MySQL은 다양한 유형의 애플리케이션에서 널리 사용되는 인기 있는 관계형 데이터베이스 관리 시스템입니다. 일괄 삽입 및 업데이트는 대량의 데이터를 처리할 때 데이터베이스 성능을 향상시키는 핵심 기술 중 하나입니다. 이 기사에서는 일반적으로 사용되는 몇 가지 MySQL 배치 삽입 및 업데이트 기술을 소개하고 해당 코드 예제를 제공합니다.
1. 데이터 일괄 삽입
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...) , (value1, value2 , ...), ...
예를 들어 학생 테이블에 여러 행의 학생 데이터를 삽입합니다.
INSERT INTO 학생 (이름, 나이, 성별) VALUES ('Alice', 18, 'female'), (' Bob', 20, 'male'), ('Charlie', 19, 'male');
이 방법은 데이터가 알려져 있고 데이터의 양이 적은 상황에 적합합니다.
INSERT INTO table_name (column1, column2, ...) SELECT column1, column2, ... FROM another_table WHERE 조건;
예를 들어 테이블 A에서 조건을 충족하는 여러 데이터 조각을 선택하여 테이블 B에 삽입합니다.
INSERT INTO table_B (column1, column2, ...) SELECT column1, column2, ... FROM table_A WHERE 조건 ;
이 방법은 조건에 따라 한 테이블에서 데이터를 선택하여 다른 테이블에 삽입해야 하는 상황에 적합합니다.
LOAD DATA INFILE 'file_path' INTO TABLE table_name
FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '
';
예: CSV 파일의 데이터를 테이블로 일괄 가져오기:
LOAD DATA INFILE '/data/students.csv' INTO TABLE Student
FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '
';
이 방법 외부 데이터 파일에서 일괄적으로 데이터를 가져와야 하는 상황에 적용 가능합니다.
2. 데이터를 일괄 업데이트
REPLACE INTO table_name (column1, value2, ...) VALUES (value1, value2, ...), (value1, value2 , .. .), ...
이 명령문은 조건에 맞는 데이터를 먼저 삭제한 후 새로운 데이터를 삽입합니다. 업데이트할 데이터가 이미 존재할 경우 삭제 후 재삽입됩니다.
UPDATE table_name
SET 컬럼1 = CASE
WHEN condition1 THEN value1 WHEN condition2 THEN value2 ... END, column2 = CASE WHEN condition1 THEN value1 WHEN condition2 THEN value2 ... END, ...
WHERE 조건;
예를 들어 조건에 따라 학생 정보를 일괄 업데이트합니다.
UPDATE 학생
SET age = CASE
WHEN name = 'Alice' THEN 19 WHEN name = 'Bob' THEN 21 ... END, gender = CASE WHEN name = 'Alice' THEN 'female' WHEN name = 'Bob' THEN 'male' ... END
WHERE name IN ('Alice', 'Bob', ...);
이 방법은 조건에 따라 일괄적으로 데이터를 업데이트하는 데 적합합니다.
위는 일반적으로 사용되는 몇 가지 MySQL 배치 삽입 및 업데이트 기술이며 실제 상황에 따라 적절한 작동 방법을 선택할 수 있습니다. 다음은 INSERT INTO VALUES 문과 UPDATE 문을 사용하여 학생 정보를 일괄 삽입하고 업데이트하는 시나리오를 보여주는 포괄적인 예입니다.
--학생 정보를 일괄 삽입
INSERT INTO 학생(이름, 나이, 성별) VALUES
('Alice' , 18, 'female'),
('Bob', 20, 'male'),
('Charlie', 19, 'male');
-- 학생 정보를 일괄 업데이트
UPDATE 학생
SET age = CASE
WHEN name = 'Alice' THEN 19 WHEN name = 'Bob' THEN 21 ... END, gender = CASE WHEN name = 'Alice' THEN 'female' WHEN name = 'Bob' THEN 'male' ... END
WHERE name IN ('Alice', 'Bob', ...);
이러한 일괄 삽입 및 업데이트 기술을 배우고 적용하면 MySQL 데이터베이스의 운영 효율성과 성능을 향상시킬 수 있습니다. , 특히 대량의 데이터 장면을 처리할 때 그렇습니다.
위 내용은 MySQL 일괄 삽입 및 업데이트를 배우기 위한 팁은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!