Mysql和MongoDB查询排名
简介如何通过查询语句来查询某个数据的排名,本文主要介绍MySql和MongoDB两种数据库的查询方式来进行排名。
一、Mysql查询排名
SELECT * FROM (SELECT student_id,(@rowNum:=@rowNum+1) AS rowNo FROM students,(SELECT(@rowNum:=0)) b ORDERBY age DESC) c WHERE student_id=216;
二、MongoDB查询排名
db.getCollection("students").aggregate([ {$sort:{score:-1}}, //按照分数排序 {$group:{_id:null,all:{$push:"$student_id"}}}, // 将所有排序结果push到all数组中,方便下面使用$indexOfArray {$project:{_id:0,total:{$size:"$all"},index:{ $indexOfArray:[ "$all",student_id] }}} // 这里的student_id为要查找名次的openid ])
注意:
- {group:{_id:null,all:{push:"student_id"}}}这条语句中的student_id一定不能省略掉$符号。
- {project:{_id:0,total:{size:"$all"},index:{ all",student_id] }}} 这里的student_id是对应的学生ID
在使用Laravel中如果要进行复杂的查询,那么通过模型中的函数来查询是不行的,所以本文主要记录如何通过aggregate来进行复杂的查询。
Towxml 是一个让小程序(微信/QQ)可以解析Markdown、HTML的解析库。能够使小程序完美解析Markdown内容。
最近想把公司的内网几台服务器能通过打开一个网站的方式进行管理,所以寻求了一圈最终选择了Teleport。Teleport,这是一个使用Go语言编写的,高效的现代SSH管理工具。
有时候为了打包需要敲很多命令,实在比较麻烦,所以这里记录了如何通过shell脚本将这些命令全部集中起来,后面可以直接执行该脚本就把需要的所有命令跑完。
Mysql是经常使用的关系型数据库,那么使用之前需要先会安装。Mysql的安装方式有几种,本文我们主要记录下如何使用cmake进行编译安装。
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题