文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【Mysql】给查询记录增加序列号方法

2023-10-22 10:38

关注

在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 tORDER BY column_name;

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

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

select version();

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

-- demo.schedule definitionCREATE 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 tORDER BY s.end_time ;

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

来源地址:https://blog.csdn.net/qq_22744093/article/details/132753775

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯