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

CHỌN bộ đếm gia tăng trong MySQL?

Để chọn bộ đếm gia tăng trong MySQL, trước tiên bạn cần khai báo và khởi tạo một biến. Cú pháp như sau -

set @anyVariableName=0;
select yourColumnName,
@anyVariableName:=@anyVariableName+1 as anyVariableName
from yourTableName;

Để hiểu cú pháp trên và đặt bộ đếm gia số, trước tiên chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau.

mysql> create table incrementCounterDemo
-> (
-> Name varchar(100)
-> );
Query OK, 0 rows affected (1.01 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 incrementCounterDemo values('John');
Query OK, 1 row affected (0.18 sec)

mysql> insert into incrementCounterDemo values('Carol');
Query OK, 1 row affected (0.20 sec)

mysql> insert into incrementCounterDemo values('David');
Query OK, 1 row affected (0.14 sec)

mysql> insert into incrementCounterDemo values('Mike');
Query OK, 1 row affected (0.21 sec)

mysql> insert into incrementCounterDemo values('Bob');
Query OK, 1 row affected (0.12 sec)

mysql> insert into incrementCounterDemo values('Sam');
Query OK, 1 row affected (0.16 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 incrementCounterDemo;

Sau đây là kết quả.

+-------+
| Name  |
+-------+
| John  |
| Carol |
| David |
| Mike  |
| Bob   |
| Sam   |
+-------+
6 rows in set (0.00 sec)

Đặt biến

mysql> set @counter=0;
Query OK, 0 rows affected (0.00 sec)

Bây giờ hãy chọn bộ đếm gia số.

mysql> select Name,
-> @counter:=@counter+1 as IncrementingValuebyOne
-> from incrementCounterDemo;

Sau đây là kết quả.

+-------+------------------------+
| Name  | IncrementingValuebyOne |
+-------+------------------------+
| John  | 1                      |
| Carol | 2                      |
| David | 3                      |
| Mike  | 4                      |
| Bob   | 5                      |
| Sam   | 6                      |
+-------+------------------------+
6 rows in set (0.00 sec)