mysql查询结果添加序列号
第一种方法:
select (@i:=@i+1) as i,table_name.* from table_name,(select @i:=0) as it
第二种方法:
set @rownum=0;
select @rownum:=@rownum+1 as rownum, t.username from auth_user t limit 1,5;
- SELECT
- --COUNT(*) AS '数量' ,
- row_number() over (order by a.EMPNAME) as '序号',
- (SELECT top 1
- a.EMPNAME AS '姓名'
- FROM PT_PREHIREEMP_DETAILS a
- INNER JOIN PT_PREHIREEMP_MAIN b
- ON a.ORGCODE = b.ORGCODE
- WHERE a.RPTDATE BETWEEN '2016-01-05 00:00:00.000'AND '2016-01-05 18:00:00.000'
- AND b.LETTERSEQ = '20150076'
- AND a.ORGCODE = '150401' ORDER BY a.EMPNAME) AS '名字',
- a.EMPNAME AS '姓名',
- a.GENDER AS '性别',
- a.UNIT,
- a.IDENTITYNO AS '身份证号',
- a.INGRUOPMETHOD AS '进入本企业方式',
- a.REMARK AS '备注',
- b.LETTERSEQ AS '编号',
- (SELECT CONVERT(DATE,a.RPTDATE,120)) AS '填报时间'
- FROM PT_PREHIREEMP_DETAILS a
- INNER JOIN PT_PREHIREEMP_MAIN b
- ON a.ORGCODE = b.ORGCODE
- WHERE a.RPTDATE BETWEEN '2016-01-05 00:00:00.000'AND '2016-01-05 18:00:00.000'
- AND b.LETTERSEQ = '20150076'
- AND a.ORGCODE = '150401' GROUP BY a.EMPNAME,a.EMPNAME,a.GENDER,a.UNIT,a.IDENTITYNO,a.INGRUOPMETHOD,a.REMARK,b.LETTERSEQ ,a.RPTDATE;
查询结果如下:
一,详解:
- row_number() over (order by a.EMPNAME) as '序号';//给查询的条数做序号
top 1得到第一条记录。以前做的分页查询的效果就是这个top,可以得到m n直接的记录。
二.集合查询总条数
select count(*) from ( select a,b from table where ...) a
注意集合后面必须要有a,这是给集合添加一个别名。
也可以使用下面方法查询总条数:
- select
- (SELECT TOP 1 (row_number() over (order by a.EMPNAME)) FROM PT_PREHIREEMP_DETAILS a
- INNER JOIN PT_PREHIREEMP_MAIN b
- ON a.ORGCODE = b.ORGCODE
- WHERE b.LETTERSEQ = '20150076' GROUP BY a.EMPNAME ORDER BY row_number() over (order by a.EMPNAME) DESC) AS '总数'
- FROM PT_PREHIREEMP_DETAILS a
- INNER JOIN PT_PREHIREEMP_MAIN b
- ON a.ORGCODE = b.ORGCODE
- WHERE b.LETTERSEQ = '20150076' GROUP BY a.EMPNAME
解释:
top 1 得到一个数,ORDER BY row_number() over (order by a.EMPNAME) DESC) 把序号按照EMPNAME倒叙排列
注意:上面基本能把效果做出来,但是效率没有测试,优化查询待续......
参考:http://435727748.iteye.com/blog/2306903
相关推荐
IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库查询程序IP数据库...
达梦数据库查询数据库所有表名-DM7达梦数据库常用的运维SQL语句 达梦数据库是一种关系数据库管理系统,广泛应用于企业级数据库管理。在实际的数据库运维中,需要对数据库进行各种查询和维护操作。下面将从达梦...
"遗传算法和实时数据库规则结合的数据库查询优化方案设计" 本文旨在结合遗传算法和实时数据库规则,设计一个数据库查询优化方案。数据库的建立是实现各种类型事务查询的关键,而现有的查询处理系统无法满足实时...
标题中的“简单的数据库查询系统窗口实现”指的是一个用于与数据库交互的用户界面应用程序。这个程序设计得简洁易用,让用户能够方便地执行SQL查询并查看结果。它涉及到两个主要技术:PyQt5和MySQL。 PyQt5是Python...
"组态王查询数据库查询实例总结工程.zip"这个压缩包文件显然包含了关于使用组态王软件进行数据库查询的实例和总结。组态王是中国广为人知的一种工业自动化组态软件,它提供了图形化的用户界面,使得用户能够方便地...
常见的数据库查询器有针对Microsoft SQL Server的SQL Server Management Studio,Oracle数据库的PL/SQL Developer,以及MySQL数据库的MySQL Workbench。这些工具虽然各自具有独特的界面和操作方式,但基本架构相似,...
u8数据库查询工具
"基于MySQL的数据库查询性能优化" 在当前的Web应用开发中,数据库的查询操作已经成为整个应用的性能瓶颈, especialmente 对于使用 MySQL 的 Web 应用。因此,数据库查询性能的优化已经成为一个非常重要的课题。...
数据库查询工具是一款非常实用的软件,专为程序开发人员设计,旨在简化数据库操作,特别是针对Access和SQL等常见类型的数据库。这款工具以其小巧的体积和强大的功能,深受开发者喜爱,可以大大提高工作效率,减轻...
在VB(Visual Basic)编程环境中,数据库查询是一个关键功能,特别是在开发管理信息系统或者数据处理应用时。本示例将深入探讨如何使用VB与Access数据库进行交互,实现数据的查询操作。 Access数据库是一种关系型...
《多数据库查询分析器——整合Access与SQLServer的高效工具》 在当今信息化社会,数据库管理系统(DBMS)已经成为企业数据存储与管理的核心组件。不同的业务需求催生了各种类型的数据库,如Access和SQLServer,它们...
Java建立数据库连接并实现数据库查询,初学者通过本Java源代码,了解如何加载驱动器,获取连接,定义SQL查询语句,获取Statement对象,执行查询、遍历ResultSet、获取数据、在控制台输出数据,关闭连接等。
分布式数据库查询优化算法综述,介绍了分布式数据库查询优化的基本思想
C#COMBOX控件绑定数据库查询值,将数据库查询的值绑定到combox控件上,显示给人看
数据库查询操作经典练习题60道答案
sql数据库查询工具 查询,修改.更新,删除等
数据库查询优化器的艺术,深入剖析数据库查询器实现源码及原理。
全国县级种植业数据库查询操作方法.docx
数据库查询是IT领域中至关重要的一个环节,尤其是在大数据和信息化时代。这个名为“databasesearch数据库查询示例程序.rar”的压缩包显然包含了关于如何执行数据库查询的实例代码或教程。让我们深入探讨一下数据库...