MariaDB Update 문을 사용하여 테이블의 데이터를 수정하는 방법을 배웁니다.
MariaDB update 문 소개
update 문을 사용하면 테이블에 있는 하나 이상의 열 데이터를 수정할 수 있습니다.
다음은 update 문의 구문을 보여줍니다.
update table_name
set column1 = value1,
column2 = value2,
...
[where search_condition];
이 구문에서:
- 먼저 update 키워드 뒤에 데이터를 업데이트할 테이블의 이름을 지정합니다.
- 둘째, set 절에 새 값이 있는 하나 이상의 열을 지정합니다.
- 셋째, 선택적 where 절을 사용하여 데이터를 수정할 행을 지정합니다. where 절을 건너뛰면 update 문이 테이블의 모든 행 데이터를 수정합니다.
MariaDB update 문 예
데모를 위해 이전에 만든 테이블 contacts 를 사용합니다.
create table if not exists contacts(
id int auto_increment,
first_name varchar(50) not null,
last_name varchar(50) not null,
full_name varchar(101)
as (concat(first_name, ' ', last_name)) virtual,
phone varchar(100),
contact_group varchar(50) default 'General',
primary key(id)
);
contacts 테이블의 내용은 다음과 같습니다.
select * from contacts;
A) MariaDB update 를 사용하여 단일 행 수정 예
다음 예제에서는 update 문을 사용하여 ID가 1인 행의 성을 'Smith'로 변경합니다.
update contacts
set last_name = 'Smith'
where id = 1;
MariaDB는 다음 메시지를 발행했습니다.
Affected rows: 1 Found rows: 0 Warnings: 0 Duration for 1 query: 0.000 sec.
영향을 받는 행의 수는 1개입니다.
하나의 행이 성공적으로 업데이트되었음을 의미합니다.
업데이트를 확인하려면 다음 쿼리를 사용할 수 있습니다.
select * from contacts
where id = 1;
B) MariaDB update 를 사용하여 여러 행 수정 예
다음 예에서는 update 문을 사용하여 'Customers' 그룹에 있는 contacts 의 전화 지역 코드를 408에서 510으로 수정합니다.
update
contacts
set
phone = replace(phone,'(408)','(510)')
where
contact_group = 'Customers';
이 예에서 where 절은 그룹이 'Customers'인 모든 연락처를 반환합니다.
set 절은 phone 열의 문자열 '(408)'을 문자열 '(510)'로 바꾸는 replace() 함수를 사용합니다.
업데이트를 확인하기 위해 그룹이 'Customers'인 연락처를 쿼리할 수 있습니다.
select * from contacts
where contact_group = 'Customers';
C) MariaDB update 를 사용하여 모든 행 수정 예
다음 예에서는 update 문을 사용하여 phone 열의 모든 문자 '-'를 공백으로 바꿉니다.
update
contacts
set
phone = replace(phone,'-',' ')
이 예제의 update 문은 where 절을 사용하지 않으므로 contacts 테이블의 모든 행을 업데이트합니다.
이 쿼리는 contacts 테이블의 모든 행을 반환합니다.
select * from contacts;
이상으로 MariaDB update 문을 사용하여 테이블의 기존 행 데이터를 수정하는 방법을 알아봤습니다.
※ 원문출처 : https://www.mariadbtutorial.com/mariadb-basics/mariadb-update/
'MariaDB SQL' 카테고리의 다른 글
MariaDB use database (데이터베이스 선택하기) (0) | 2023.07.21 |
---|---|
MariaDB Delete (0) | 2023.07.18 |
MariaDB Insert Into Select (0) | 2023.07.07 |
MariaDB Insert Multiple Rows (0) | 2023.07.05 |
MariaDB Insert (0) | 2023.06.28 |