MySQL实现简单排名
mysql 实现 简单 排名
2023-09-11 14:15:40 时间
01 基础知识
-
sql语句中,使用@来定义一个变量。如:@abc
-
sql语句中,使用:=来给变量赋值,:@abc:=123,则变量abc的值为123
-
sql语句中,if(A,B,C)表示,如果A条件成立,那么执行B,否则执行C,如:@abc := if(2>1,100,200)的结果是,abc的值为100。
-
sql语句中,还有case…when…then
02 排名例子
SELECT
city_popularity.*,
CASE
WHEN @popularity = popularity THEN @rank
WHEN @popularity := popularity THEN @rank := @rank + 1
WHEN @popularity = 0 THEN @rank := @rank + 1
END AS rank
FROM
city_popularity,
(SELECT @rank := 0, @popularity := NULL) init
ORDER BY
popularity DESC;
查询结果:
参考博客:
相关文章
- mysql索引总结(2)-MySQL聚簇索引和非聚簇索引
- new QDM 前后端开发总结(net6+vue+mysql+redis+mq+mongodb+ES+docker)
- 【MySQL高级】MySql中常用工具及Mysql 日志
- 使用mybatis操作mysql数据库SUM方法返回NULL解决
- MySQL第四讲 MySql Undo日志 - 对聚簇索引进行CUD操作
- mysql UNION all 实现不对称数据统计
- 17期-什么是MySQL数据库?看这一篇干货文章就够了!
- Node+Express+MySql实现简单增删改查和登录
- MYSQL日期函数
- 基于 Java Web +MySQL实现的宾馆管理系统【100010411】
- 基于Java(Spring boot+Hibernate)+VUE+MySQL实现(Web)员工信息管理系统【100010234】
- 基于 PHP+apache+MySql实现(Web)客户关系管理系统【100010108】
- 基于Java(jsp+servlet)+Mysql实现的(Web)宿舍管理系统【100010103】
- 基于Python+Mysql实现(WinForm)书店销售管理管理子系统【100010028】
- nodejs进阶(6)—连接MySQL数据库
- 转 mysql spool_用MySQL实现类似Oracle SPOOL的功能
- MySQL Proxy 实现 MySQL 读写分离提高并发负载
- mysql实现full join
- 基于amoeba实现mysql数据库的读写分离/负载均衡
- SpringBoot+TKmybatis+mysql实现简单后台管理demo
- Oracle 与 MySQL 的区别
- MySQL · 实现分析 · HybridDB for MySQL 数据压缩
- 【3.3】mysql链接服务器,Federated存储引擎实现远程表,相当于sql server的连接服务器
- (5.8)mysql高可用系列——MySQL中的GTID复制(实践篇)
- mysql 修改字符集
- cmd开启(关闭)mysql服务命令出现拒绝访问 发生系统错误5