Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Với MySQL, làm cách nào để tạo cột chứa chỉ mục bản ghi trong bảng?

Bạn có thể muốn thử những cách sau:

SELECT  l.position, 
        l.username, 
        l.score,
        @curRow := @curRow + 1 AS row_number
FROM    league_girl l
JOIN    (SELECT @curRow := 0) r;

JOIN (SELECT @curRow := 0) phần cho phép khởi tạo biến mà không yêu cầu SET riêng biệt lệnh.

Trường hợp thử nghiệm:

CREATE TABLE league_girl (position int, username varchar(10), score int);
INSERT INTO league_girl VALUES (1, 'a', 10);
INSERT INTO league_girl VALUES (2, 'b', 25);
INSERT INTO league_girl VALUES (3, 'c', 75);
INSERT INTO league_girl VALUES (4, 'd', 25);
INSERT INTO league_girl VALUES (5, 'e', 55);
INSERT INTO league_girl VALUES (6, 'f', 80);
INSERT INTO league_girl VALUES (7, 'g', 15);

Truy vấn kiểm tra:

SELECT  l.position, 
        l.username, 
        l.score,
        @curRow := @curRow + 1 AS row_number
FROM    league_girl l
JOIN    (SELECT @curRow := 0) r
WHERE   l.score > 50;

Kết quả:

+----------+----------+-------+------------+
| position | username | score | row_number |
+----------+----------+-------+------------+
|        3 | c        |    75 |          1 |
|        5 | e        |    55 |          2 |
|        6 | f        |    80 |          3 |
+----------+----------+-------+------------+
3 rows in set (0.00 sec)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nâng cao tiêu chuẩn về quản lý MySQL, MariaDB, PostgreSQL &MongoDB

  2. Cách theo dõi các chỉ số HAProxy với ClusterControl

  3. MySQL loại bỏ các bản sao khỏi cơ sở dữ liệu lớn một cách nhanh chóng

  4. Bao gồm các tiêu đề khi sử dụng SELECT INTO OUTFILE?

  5. Viết lại lựa chọn mysql để giảm thời gian và ghi tmp vào đĩa