Computer >> Máy Tính >  >> Lập trình >> MySQL

Giảm giá trị hàng xuống 1 trong MySQL?

Bạn có thể tăng và giảm giá trị hàng 1 trong MySQL bằng lệnh UPDATE. Cú pháp như sau -

UPDATE yourTableName set yourColumnName = yourColumnName-1 where condition;

Hãy để chúng tôi tạo một bảng để giảm giá trị hàng xuống 1. Sau đây là truy vấn -

mysql> create table IncrementAndDecrementValue
   −> (
   −> UserId int,
   −> UserScores int
   −> );
Query OK, 0 rows affected (0.60 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -

mysql> insert into IncrementAndDecrementValue values(101,20000);
Query OK, 1 row affected (0.13 sec)

mysql> insert into IncrementAndDecrementValue values(102,30000);
Query OK, 1 row affected (0.20 sec)

mysql> insert into IncrementAndDecrementValue values(103,40000);
Query OK, 1 row affected (0.11 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

mysql> select *from IncrementAndDecrementValue;

Sau đây là kết quả đầu ra;

+--------+------------+
| UserId | UserScores |
+--------+------------+
|    101 | 20000      |
|    102 | 30000      |
|    103 | 40000      |
+--------+------------+
3 rows in set (0.00 sec)

Đây là truy vấn để giảm giá trị UserScores đi 1 với điều kiện where.

mysql> update IncrementAndDecrementValue set UserScores = UserScores-1 where UserId = 103;
Query OK, 1 row affected (0.41 sec)
Rows matched: 1 Changed: 1 Warnings: 0

Hãy để chúng tôi kiểm tra xem giá trị có được cập nhật hay không. Truy vấn như sau -

mysql> select *from IncrementAndDecrementValue;

Sau đây là kết quả hiển thị rằng chúng tôi đã giảm giá trị hàng thành công -

+--------+------------+
| UserId | UserScores |
+--------+------------+
|    101 | 20000      |
|    102 | 30000      |
|    103 | 39999      |
+--------+------------+
3 rows in set (0.00 sec)