自学内容网 自学内容网

MongoDB文档查询

一、实验目的

1.  理解MongoDB文档数据库的基本概念和特性。

2.  掌握在MongoDB中创建集合和插入文档数据的方法。

3.  学习使用MongoDB进行文档查询操作,包括查询、过滤和排序等。

二、实验环境准备

1.  JAVA环境准备:确保Java Development Kit (JDK) 已安装并配置好环境变量。

2.  Hadoop环境准备:安装并配置Hadoop环境,确保Hadoop的各个组件可以在伪分布式模式下运行。

三、实验教材参考

《大数据存储》,谭旭,人民邮电出版社,2022,ISBN 978-7-115-59414-3。

四、实验内容与步骤

1、创建集合

在MongoDB中创建一个新的数据集合,用于存储实验数据

2、插入文档数据

将至少三个文档插入到所创建的数据集合中,每个文档包含不同的字段和数据类型。

db.collection.insert([

  {

    name: "John Doe",           

    age: 29,                    

    hobbies: ["reading", "hiking"],

    isEmployed: true,           

    joinDate: new Date()        

  },

  {

    title: "MongoDB Basics",    

    pages: 250,                 

    author: {                   

      firstName: "Jane",

      lastName: "Smith"

    },

    published: true,            

    price: 19.99,               

    tags: ["database", "mongodb", "tutorial"]

  },

  {

    productName: "Smartphone",  

    stock: 500,                 

    specifications: {           

      brand: "TechBrand",

      model: "X100",

      features: ["5G", "128GB Storage", "Waterproof"]

    },

    available: false,           

    releaseDate: ISODate("2023-11-01T00:00:00Z")

  }

])

3、文档查询操作

(1)查询集合中的所有文档:db.collection.find()

(2)根据特定条件查找文档

查找“name”为"John Doe"的文档:db.collection.find({ name: "John Doe" })

查询“age”大于25的文档:db.collection.find({ age: { $gt: 25 } }).pretty()

(3)对查询结果进行排序,展示文档排序的功能

按age升序排序:db.collection.find({ age: { $exists: true } }).sort({ age: 1 }).pretty()

按price降序排序:db.collection.find({ price: { $exists: true } }).sort({ price: -1 }).pretty()

(4)根据条件过滤文档

查找stock大于等于 100 的文档:db.collection.find({ stock: { $gte: 100 } }).pretty()

查找available为false的文档:db.collection.find({ available: false }).pretty()


原文地址:https://blog.csdn.net/m0_75260099/article/details/145266675

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!