首页 > 数据库 >MongoDB常用查询

MongoDB常用查询

时间:2023-10-09 18:34:22浏览次数:35  
标签:sort 常用 MongoDB db 查询 stu num aggregate id

1. 数据库数据说明

# 集合:school
# 文档:stu
# 结合字段:id, 学号、姓名、电话、性别、年龄、学历、备注
# 初始化20条数据
use school
for (var num=1; num<=20; num++) {
    db.stu.insert({
        id:num,
        no: "SN"+num,
        name: "name"+num,
        tel: "1111111111",
        sex: "女",
        age: num,
        school: "研究生",
        remark: "备注"
    })
}

2. 常见数据库操作

# 1 按照 姓名 正序排列
db.stu.find().sort({"name":1})

# 2 按照 年龄 倒序,id正序 排列
db.stu.find().sort({"age":"-1","_id":"1"})

# 3. 统计男生、女生的总年龄
db.stu.aggregate([
    {
    	$group:{
            _id: "$sex",
            "总年龄": {$sum: "$age"}
    	}
    }
])

# 4. 求学生总数和平均年龄
db.stu.aggregate([
    {
    	$group:{
            _id: null,
            total_num: {$sum:1},
            total_avg: {$avg: "$age"}
    	}
    }
])

# 5. 查询男生、女生人数,按人数升序
db.stu.aggregate([
    {$group:{_id: "$sex","总人数": {$sum: 1}}},
    {$sort:{"总人数": -1}}
])

标签:sort,常用,MongoDB,db,查询,stu,num,aggregate,id
From: https://www.cnblogs.com/songxia/p/17752667.html

相关文章

  • MongoDB基础知识
    1.简介MongoDB官方文档菜鸟教程1、NoSQL(NotOnlySQL),不仅仅是SQL,主要是指非关系型数据库,是对不同与传统的关系型数据库的数据管理系统的统称2、NoSQL用于超大规模数据的存储,这些类型的数据存储吧需要固定的模式,无需多余的操作就可以横向扩展1.2NoSQL和RDBMS的区分......
  • 数据库MYSQL常用
    1命令操作数据库相关1.1连接和退出mysql服务#账号密码方式(我的本地因为暂时没有密码,所以不需要输入密码)mysql-hlocalhost-P3306-uroot-proot#退出\q1.2数据库操作1.2.1创建数据库createdatabasemydemo;1.2.2显示全部的数据库showdatabases;1.2......
  • php常用总结
    1.PHP处理脚本解析(脚本不乱码)header('Conent-type:text/html;charset=utf-8');2.常用的系统函数2.1有关输出的函数:print和print_rprint()==类似于echo输出提供的内容,本质是一种结构(不是函数),返回1,可以不需要使用括号;print_r()==类似于var_dump,但是比var_dump简单,不会......
  • Linux 常用命令 grep
    grep查找文件中符合条件的字符串,与sed、awk组成Linux的三剑客,语法格式:grep[选项]关键字文件名关键字加引号(单引号,双引号),不加引号的区别关键字加引号,关键字会被看成一个整体,可以包含空格或特殊字符1)单引号如果关键字包含特殊字符($和\'除外),使用单引号会对特殊字符转......
  • Oracle和达梦:连接多行查询结果
    Oracle和达梦:LISTAGG连接查询结果LISTAGG介绍使用LISTAGG函数,您可以将多行数据连接成一个字符串,并指定分隔符进行分隔。这在需要将多行数据合并为单个字符串的情况下非常有用,例如将多个值合并为逗号分隔的列表。函数介绍LISTAGG(column,delimiter)WITHINGROUP(ORDER......
  • Rust cargo常用命令
    目录设置国内镜像创建新项目构建项目运行项目检查项目,但不构建可执行文件运行项目的测试发布项目更新依赖查看项目依赖关系树创建新的库项目文档生成设置国内镜像cd~/.cargo#创建config文件vimconfig#添加如下镜像源[source.crates-io]registry="https://github.com/......
  • 查询手机号所属地,支持多种查询方式的API接口
    在现代社会,手机号已经成为人们生活和工作中不可缺少的一部分。而一个手机号可以初步反映出该号码的归属地信息。因此,查询手机号所属地已经成为人们日常生活中的常见需求。本篇文章将通过介绍一个支持多种查询方式的API接口来帮助读者更好地了解查询手机号所属地的相关知识。 ......
  • linux常用svn命令
    linux常用svn命令 1、将文件checkout到本地目录svncheckoutpath(path是服务器上的目录)例如:svncheckoutsvn://192.168.1.1/pro/domain简写:svnco       2、往版本库中添加新的文件svnaddfile例如:svnaddtest.php(添加test.php)......
  • sql查询实战代码
    <selectid="workPage"resultType="com.shsajt.db.model.ContractWork"> select*fromcontract_workcw leftjoincontract_itemcioncw.item_id=ci.id leftjoinclosed_loopcloncw.id=cl.work_id <where> cw.delet......
  • Golang 使用SQLX实现可选条件查询
    packagemainimport( "fmt" "log" _"github.com/go-sql-driver/mysql" "github.com/jmoiron/sqlx")typeCityQuerystruct{ querystring optscityQueryOptions params[]any}typecityQueryOptionsstruct{......