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)