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

SQL의 사용자 정의 변수에 증가된 값을 설정하여 여러 타임스탬프 값을 증가시킵니다.

<시간/>

증가된 값은 아래와 같이 사용자 정의 변수에 설정할 수 있습니다. 여기서 "yourValue"는 증가된 값입니다. 그런 다음 MySQL UPDATE를 사용하여 열을 업데이트하고 타임스탬프 값을 증가시킵니다. -

set @anyVariableName :=yourValue;
update yourTableName set yourColumnName=yourColumnName+interval (@yourVariableName) second;

먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable
(
   DueDatetime timestamp
);
Query OK, 0 rows affected (0.73 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable values('2019-01-31 12 :30 :40');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values('2019-09-06 10 :00 :00');
Query OK, 1 row affected (0.73 sec)
mysql> insert into DemoTable values('2019-09-07 11 :10 :24');
Query OK, 1 row affected (0.25 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable;

이것은 다음과 같은 출력을 생성합니다 -

+-----------------------+
| DueDatetime       |
+-----------------------+
| 2019-01-31 12 :30 :40 |
| 2019-09-06 10 :00 :00 |
| 2019-09-07 11 :10 :24 |
+-----------------------+
3 rows in set (0.00 sec)

다음은 여러 타임스탬프 값을 증가시키는 쿼리입니다. -

mysql> set @secondValue :=12;
Query OK, 0 rows affected (0.00 sec)
mysql> update DemoTable set DueDatetime=DueDatetime+interval (@secondValue) second;
Query OK, 3 rows affected (0.99 sec)
Rows matched : 3 Changed : 3 Warnings : 0

다시 한번 테이블 기록을 확인해보자 -

mysql> select *from DemoTable;

그러면 다음과 같은 출력이 생성됩니다. 타임스탬프 값이 이제 증가합니다 -

+-----------------------+
| DueDatetime           |
+-----------------------+
| 2019-01-31 12 :30 :52 |
| 2019-09-06 10 :00 :12 |
| 2019-09-07 11 :10 :36 |
+-----------------------+
3 rows in set (0.00 sec)