MySQL中给自定义的字段查询结果添加排名的方法
我正在用 MySQL 客户端的时候,突然想到如果可以给查询结果添加排名该多好啊,然后就找到了一个简单的解决办法。
下面是一个示例表的数据:
然后我们要根据 Roll_No 字段进行排序并给出排名,我们首先必须定义一个初始值为0的变量,然后在查询结果中使用这个变量。
如下面的代码:
SET @counter=0; SELECT @counter:=@counter+1 AS Rank,LastName,Roll_no as Roll FROM Students ORDER BY Roll_
执行该语句的结果如下:
更多关于自定义变量的内容请看 MySQL 的文档。
相关推荐
-
只有两个字段用一个sql语句查询出某个学生的姓名、成绩以及在表中的排名
昨天去面试时遇到一个这样的问题: 有一张成绩表,只有两个字段,姓名和成绩.怎样用一个sql语句查询出某个学生的姓名,成绩以及在表中的排名? 一时间我也想不出具体实现,我就提了两种思路:一种是通过join关联一个查询出他排名的sql语句:一种是通过group by来实现. 回答得连自己都觉得有点心虚.请问大家如何实现呢? 假设:表名字为Course,两个字段分别为name和score 实现语句: SELECT 学生,成绩, (SELECT COUNT(*) FROM 表 WHERE a.成绩<=成
-
查询数据排名情况SQL
1/准备测试数据 ---------------------------------------------------------------------------------create table t1(c1 integer,c2 integer,c3 integer); insert into t1 values(1,2,3) insert into t1 values(1,8,4)insert into t1 values(1,4,4) insert into t1 values(1
-
SQL查询排名函数实例
在实际开发中经常会遇到计算某个字段的排名的情况 如下表:totak_sales 现在又如此要求:按sales的逆序排序,要求添加一个sales_rank字段,显示排名顺序 方法: 复制代码 代码如下: SELECT a1.Name, a1.Sales, COUNT(a2.sales) Sales_Rank FROM Total_Sales a1, Total_Sales a2 WHERE a1.Sales <= a2.Sales or (a1.Sales=a2.Sales and a1.Name
-
MySQL中给自定义的字段查询结果添加排名的方法
我正在用 MySQL 客户端的时候,突然想到如果可以给查询结果添加排名该多好啊,然后就找到了一个简单的解决办法. 下面是一个示例表的数据: 然后我们要根据 Roll_No 字段进行排序并给出排名,我们首先必须定义一个初始值为0的变量,然后在查询结果中使用这个变量. 如下面的代码: SET @counter=0; SELECT @counter:=@counter+1 AS Rank,LastName,Roll_no as Roll FROM Students ORDER BY Roll_ 执行
-
mysql中使用instr进行模糊查询方法介绍
在mysql中使用内部函数instr,可代替传统的like方式查询,并且速度更快. instr 函数,第一个参数是字段,第二个参数是要查询的串,返回串的位置,第一个是1,如果没找到就是0. 例如,查询字段name中带"军"的名字,传统的方法是: select name from 用户表 where name like `%军%'; 用instr的方法: select name from 用户表 where instr('name','军'); 或: select name from 用
-
MySql中流程控制函数/统计函数/分组查询用法解析
路漫漫其修远兮,吾将上下而求索,又到了周末,我继续带各位看官学习回顾Mysql知识. 上次说到了流程控制函数,那就从流程控制函数来继续学习吧! #五.流程控制函数 #1.if函数:if else的效果 IF(条件表达式,成立返回1,不成立返回2) #与Java三元运算相同 SELECT IF(10>5,'大','小'); SELECT last_name,commission_pct,IF(commission_pct IS NULL,'没奖金呵呵','有奖金嘻嘻') AS 备注 FROM em
-
浅谈mysql中多表不关联查询的实现方法
大家在使用MySQL查询时正常是直接一个表的查询,要不然也就是多表的关联查询,使用到了左联结(left join).右联结(right join).内联结(inner join).外联结(outer join).这种都是两个表之间有一定关联,也就是我们常常说的有一个外键对应关系,可以使用到 a.id = b.aId这种语句去写的关系了.这种是大家常常使用的,可是有时候我们会需要去同时查询两个或者是多个表的时候,这些表又是没有互相关联的,比如要查user表和user_history表中的某一些数据
-
Mysql中批量替换某个字段的部分数据(推荐)
MYSQL中批量替换某个字段的部分数据,具体介绍如下所示: 1.修改字段里的所有含有指定字符串的文字 UPDATE 表A SET 字段B = replace(字段B, 'aaa', 'bbb') example: update table set url= replace(url, 'aaa', 'bbb') [将url字段中的aaa批量更改为bbb] update table set url= REPLACE (url,'3','1.png') where 条件; 2.常规条件修改: upda
-
mysql简单实现查询结果添加序列号的方法
本文实例讲述了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; 更多关于MySQL相关内容感兴
-
Python查询阿里巴巴关键字排名的方法
本文实例讲述了Python查询阿里巴巴关键字排名的方法.分享给大家供大家参考.具体如下: 这里使用python库urllib及pyquery基本东西的应用,实现阿里巴巴关键词排名的查询,其中涉及到urllib代理的设置,pyquery对html文档的解析 1. urllib 基础模块的应用,通过该类获取到url中的html文档信息,内部可以重写代理的获取方法 class ProxyScrapy(object): def __init__(self): self.proxy_robot = Pro
-
Vuejs在v-for中,利用index来对第一项添加class的方法
(1)在v-for中,利用index来对第一项添加class 在CODE上查看代码片派生到我的代码片 <a class="list-group-item" :class="{'active':!index}" v-for="(i,index) in announcement"> index来源于v-for,i表示遍历的数组的元素,index表示索引. 由于index从0开始,因此如果要指定第一项有active这个类,那么就用v-bin
-
mysql中提高Order by语句查询效率的两个思路分析
因为可能需要对数据库的记录进行重新排序.在这篇文章中,笔者就谈谈提高Order By语句查询效率的两个思路,以供大家参考. 在MySQL数据库中,Order by语句的使用频率是比较高的.但是众所周知,在使用这个语句时,往往会降低数据查询的性能.因为可能需要对数据库的记录进行重新排序.在这篇文章中,笔者就谈谈提高Order By语句查询效率的两个思路,以供大家参考. 498)this.width=498;" border=0> 一.建议使用一个索引来满足Order By子句. 在条件允许的
-
MySQL 中查找含有目标字段的表的方法
复制代码 代码如下: SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.`COLUMNS` WHERE COLUMN_NAME='字段名字' 参考:MySQL中,一个字段在多张表都存在,怎么用sql语句一次性查询这些表呢
随机推荐
- 谈一谈Android内存泄漏问题
- RCMD使用说明
- IOS绘制虚线的方法总结
- oracle报错(ORA-00600)问题处理
- php数据序列化测试实例详解
- PHP封装CURL扩展类实例
- 实例详解PHP中html word 互转的方法
- 浅析PHP文件下载原理
- java实现mp3合并的方法
- Python中使用第三方库xlrd来读取Excel示例
- c# 中文转拼音without CJK
- 本地Bootstrap文件字体图标引入却无法显示问题的解决方法
- 详解JS中Array对象扩展与String对象扩展
- Linux查找占用的端口,并杀死进程的方法
- 电子商务网站上的常用的js放大镜效果
- 如何拥有一台安静的电脑
- vsftpd的530 Login incorrect错误解决方法 vsftpd登录错误
- JAVA实现空间索引编码——GeoHash的示例
- 一些常用的JavaScript函数(json)附详细说明
- C#中隐式运行CMD命令行窗口的方法