【Mysql】给查询记录增加序列号方法
创始人
2025-01-15 22:34:42
0

在MySQL 8.0版本中,你可以使用ROW_NUMBER()函数来添加序号。以下是一个示例查询,演示如何添加序号:

SELECT      ROW_NUMBER() OVER (ORDER BY column_name) AS serial_number,     column1, column2, ... FROM     your_table; 

请将column_name替换为你想要按照哪一列排序的列名。还可以添加其他需要的列,以在结果中显示它们。

这个查询将返回一个名为serial_number的新列,其中包含每行的序号。序号是根据ORDER BY子句中指定的列进行排序的。

需要注意的是,ROW_NUMBER()函数是在MySQL 8.0版本中引入的。在MySQL 5.7版本中,该函数不可用。如果你使用的是MySQL 5.7版本,并且需要添加序号,你可以考虑其他方法,例如使用变量或自增列。以下是一个使用变量的示例查询:

SELECT      @row_number:=@row_number + 1 AS serial_number,     column1, column2, ... FROM     your_table, (SELECT @row_number:=0) AS t ORDER BY column_name; 

在这个示例中,我们使用一个变量@row_number来追踪行号。通过将变量递增并与其他查询一起使用,你可以为每行添加一个序号。请记得将column_name替换为你想要按照哪一列排序的列名。

由于我安装的是MySQL 5.7版本的,下面用MySQL 5.7的演示一下:
查看版本号:

select version(); 

输出:
在这里插入图片描述
数据准备:

-- demo.schedule definition  CREATE TABLE `schedule` (   `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',   `start_time` datetime NOT NULL,   `end_time` datetime NOT NULL,   `employee_id` int(10) unsigned DEFAULT NULL,   PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; 

插入数据:

INSERT INTO demo.schedule (start_time, end_time, employee_id) VALUES('2023-09-08 07:50:00', '2023-09-08 12:00:00', 1); INSERT INTO demo.schedule (start_time, end_time, employee_id) VALUES('2023-09-08 12:40:00', '2023-09-08 17:20:00', 1); INSERT INTO demo.schedule (start_time, end_time, employee_id) VALUES('2023-09-08 18:10:00', '2023-09-08 20:30:00', 1);  

查询数据,给记录添加序列号:

SELECT      @row_number:=@row_number + 1 AS serial_number,     s.* FROM     schedule s, (SELECT @row_number:=0) AS t ORDER BY s.end_time ; 

输出结果:
在这里插入图片描述

相关内容

热门资讯

据通报!新悠悠辅助,果然真的是... 据通报!新悠悠辅助,果然真的是有辅助修改器(揭秘有挂)-哔哩哔哩运新悠悠辅助辅助工具,进入游戏界面。...
在玩家背景下!新玉海楼茶苑挂,... 在玩家背景下!新玉海楼茶苑挂,其实是真的辅助插件(有挂总结)-哔哩哔哩1、新玉海楼茶苑挂辅助软件下载...
此事引发广泛关注!唯思竞技游戏... 此事引发广泛关注!唯思竞技游戏辅助,切实真的有辅助下载(真是有挂)-哔哩哔哩1、进入到唯思竞技游戏辅...
随着!免费游戏辅助软件,总是有... 随着!免费游戏辅助软件,总是有挂辅助平台(有挂技术)-哔哩哔哩;在进入免费游戏辅助软件软件靠谱后,参...
相较于以往!赣牌圈插件,真是存... 相较于以往!赣牌圈插件,真是存在有辅助挂(有挂方法)-哔哩哔哩赣牌圈插件破解侠是真的助透视。每个模型...
据了解!广东雀神辅助器透视,确... 据了解!广东雀神辅助器透视,确实存在有辅助神器(有挂神器)-哔哩哔哩1)广东雀神辅助器透视有没有挂:...
受玩家影响!悠悠辅助器,原来存... 受玩家影响!悠悠辅助器,原来存在有辅助app(有挂教程)-哔哩哔哩1、该软件可以轻松地帮助玩家将悠悠...
来临!创思维激k必胜辅助,总是... 来临!创思维激k必胜辅助,总是真的有辅助脚本(有挂教学)-哔哩哔哩1、玩家可以在创思维激k必胜辅助线...
有玩家发现!天天微友助手破解版... 有玩家发现!天天微友助手破解版,一直是真的辅助工具(有挂猫腻)-哔哩哔哩1、有玩家发现!天天微友助手...
今天下午!新卡农挂,一直真的有... 今天下午!新卡农挂,一直真的有辅助软件(新版有挂)-哔哩哔哩一、新卡农挂可以开透视的定义与意义1、新...