Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL의 기존 값에 값을 추가하기 위해 필드를 업데이트하는 방법은 무엇입니까?

<시간/>

UPDATE 및 SET 명령을 사용하여 기존 값에 값을 추가하도록 필드를 업데이트할 수 있습니다. 구문은 다음과 같습니다 -

UPDATE yourTableName SET yourColumnName = yourColumnName+integerValueToAdd WHERE yourCondition;

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table addingValueToExisting
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(30),
   -> GameScore int,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.58 sec)

insert 명령을 사용하여 테이블에 레코드를 삽입합니다. 쿼리는 다음과 같습니다 -

mysql> insert into addingValueToExisting(Name,GameScore) values('John',89);
Query OK, 1 row affected (0.11 sec)

mysql> insert into addingValueToExisting(Name,GameScore) values('Mike',56);
Query OK, 1 row affected (0.28 sec)

mysql> insert into addingValueToExisting(Name,GameScore) values('Sam',99);
Query OK, 1 row affected (0.18 sec)

mysql> insert into addingValueToExisting(Name,GameScore) values('Carol',100);
Query OK, 1 row affected (0.17 sec)

mysql> insert into addingValueToExisting(Name,GameScore) values('David',67);
Query OK, 1 row affected (0.25 sec)

mysql> insert into addingValueToExisting(Name,GameScore) values('Bob',78);
Query OK, 1 row affected (0.14 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다 -

mysql> select *from addingValueToExisting;

다음은 출력입니다 -

+----+-------+-----------+
| Id | Name  | GameScore |
+----+-------+-----------+
| 1  | John  |        89 |
| 2  | Mike  |        56 |
| 3  | Sam   |        99 |
| 4  | Carol |       100 |
| 5  | David |        67 |
| 6  | Bob   |        78 |
+----+-------+-----------+
6 rows in set (0.00 sec)

기존 값에 값을 추가하려면 필드를 업데이트하십시오. 이 예에서는 10을 추가하여 값 110으로 100을 업데이트하겠습니다. 쿼리는 다음과 같습니다. -

mysql> update addingValueToExisting set GameScore = GameScore+10 where Id = 4;
Query OK, 1 row affected (0.23 sec)
Rows matched − 1 Changed − 1 Warnings − 0

특정 레코드가 업데이트되었는지 확인하십시오. 쿼리는 다음과 같습니다 -

mysql> select *from addingValueToExisting where Id = 4;
에서 *fromaddingValueToExisting을 선택합니다.

다음은 출력입니다 -

+----+-------+-----------+
| Id | Name  | GameScore |
+----+-------+-----------+
| 4  | Carol | 110       |
+----+-------+-----------+
1 row in set (0.00 sec)

위의 출력을 보면 값 100이 10씩 증가하여 현재 110이 됩니다.