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

MySQL에서 int 필드 값을 토글하는 간단한 방법


int 필드 값을 토글하려면 if()와 함께 업데이트 명령을 사용할 수 있습니다. 구문은 다음과 같습니다 -

update yourTableName set yourColumnName = IF(yourColumnName = 0, 1, 0);

위의 토글 구문을 이해하려면 일부 int 값으로 테이블을 만드십시오. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table ToggleDemo
   −> (
      −> IsOnOrOff int
   −> );
Query OK, 0 rows affected (0.53 sec)

insert 명령을 사용하여 테이블에 int 값을 삽입해 보겠습니다. 쿼리는 다음과 같습니다 -

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.25 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.15 sec)

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.17 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.11 sec)

mysql> insert into ToggleDemo values(1);
Query OK, 1 row affected (0.10 sec)

mysql> insert into ToggleDemo values(0);
Query OK, 1 row affected (0.09 sec)

위에 삽입된 모든 레코드 표시 -

mysql> select *from ToggleDemo;

다음은 출력입니다 -

+-----------+
| IsOnOrOff |
+-----------+
|         1 |
|         0 |
|         1 |
|         0 |
|         1 |
|         0 |
+-----------+
6 rows in set (0.00 sec)

이제 처음에 논의한 구문을 구현하여 int 값을 토글할 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> update ToggleDemo set IsOnOrOff = IF(IsOnOrOff = 0, 1, 0);
Query OK, 6 rows affected (0.12 sec)
Rows matched: 6 Changed: 6 Warnings − 0

이제 열 값이 토글되었는지 여부를 확인할 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> select *from ToggleDemo;

다음은 토글을 성공적으로 표시하는 출력입니다. −

+-----------+
| IsOnOrOff |
+-----------+
|         0 |
|         1 |
|         0 |
|         1 |
|         0 |
|       1 |
+-----------+
6 rows in set (0.00 sec)