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

ROW_NUMBER () trong MySQL là gì?

Row_NUMBER () được bao gồm từ MySQL phiên bản 8.0. Nó là một loại chức năng cửa sổ. Điều này có thể được sử dụng để gán số thứ tự cho các hàng. Để hiểu, hãy tạo một bảng với sự trợ giúp của lệnh CREATE -

Tạo bảng

mysql> CREATE table rowNumberDemo
-> (
-> FirstName varchar(100)
-> );
Query OK, 0 rows affected (0.92 sec)

Chèn bản ghi

mysql> INSERT into rowNumberDemo values('john');
Query OK, 1 row affected (0.17 sec)

mysql> INSERT into rowNumberDemo values('john');
Query OK, 1 row affected (0.29 sec)

mysql> INSERT into rowNumberDemo values('Bob');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into rowNumberDemo values('Smith');
Query OK, 1 row affected (0.17 sec)

Chúng ta có thể hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh SELECT -

mysql> SELECT * from rowNumberDemo;

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

+-----------+
| FirstName |
+-----------+
| john      |
| john      |
| Bob       |
| Smith     |
+-----------+
4 rows in set (0.00 sec)

Bây giờ, chúng ta có thể sử dụng row_number () để gán giá trị tăng dần cho mọi bản ghi -

mysql> SELECT row_number() over ( order by firstName) RowNumberSqeuence,FirstName from rowNumberDemo
-> order by FirstName;

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

+-------------------+-----------+
| RowNumberSqeuence | FirstName |
+-------------------+-----------+
| 1                 | Bob       |
| 2                 | john      |
| 3                 | john      |
| 4                 | Smith     |
+-------------------+-----------+
4 rows in set (0.00 sec)

Nhìn vào đầu ra, chúng tôi đã gán một số cho mọi bản ghi với sự trợ giúp của row_number ().