MySQL 第七天作业 nosql作业

作业一:string list hash结构中,每个至少完成5个命令,包含插入 修改 删除 查询,list 和hash还需要增加遍历的操作命令

1、 string类型数据的命令操作:

(1) 设置键值:

set key1 redis

(2) 读取键值:

get key1

(3) 数值类型自增1:

incr key1

在这里插入图片描述

(4) 数值类型自减1:

decr key1

在这里插入图片描述

(5) 查看值的长度:

STRLEN key1

在这里插入图片描述

2、 list类型数据的命令操作:

(1)对列表city插入元素:Shanghai Suzhou Hangzhou

LPUSH city Shanghai Suzhou Hangzhou

在这里插入图片描述

(2)将列表city里的头部的元素移除

LPOP city

在这里插入图片描述

(3)将name列表的尾部元素移除到number列表的头部

RPOPLPUSH name number

在这里插入图片描述

(4) 对一个已存在的列表插入新元素

RPUSH name e

在这里插入图片描述

(5)查看list的值长度

LLEN name

在这里插入图片描述
(1)设置一个hash表,order表里包括的键值信息有:id:1,customer_name:张三

HMSET order id 1 customer_name "张三"

在这里插入图片描述

(2) 创建一个hash表,表里的键值批量插入

HMSET order1 name n add a ip i

在这里插入图片描述

(3) 获取order对应的map的所有key

HKEYS order

在这里插入图片描述

(4) 获取order对应的map的键值数量

HLEN order

在这里插入图片描述

(5) 获取order表里的id值

HGET order id

在这里插入图片描述

4、Keys相关的命令操作

(1) 查看key是否存在

EXISTS key1

在这里插入图片描述

(2) 查找满足pattern的keys

KEYS or*

在这里插入图片描述

(3) 查看key的超时时间

TTL key1

(4) 遍历key

KEYS * 

作业二:mongodb作业

1. 创建一个数据库 名字grade

use grade

2. 数据库中创建一个集合名字 class

db.createCollection("class")

3. 集合中插入若干数据

db.class.insert([
{name:"小计",age:10,sex:'m',hobby:['draw','basketball','pingpong']},
{name:"小红",age:8,sex:'f',hobby:['draw','dance','pingpong']},
{name:"小明",age:11,sex:'m',hobby:['football','dance','sing']},
{name:"小张",age:13,sex:'f',hobby:['draw','dance','pingpong']},
{name:"小龙",age:6,sex:'f',hobby:['draw','football','sing']},
{name:"小李",age:7,sex:'m',hobby:['draw','dance','pingpong']},
{name:"小陈",age:5,sex:'f',hobby:['draw','dance','sing']},
{name:"小钱",age:3,sex:'m',hobby:['pingpong','dance','sing']},
{name:"小明",age:6,sex:'f',hobby:['draw','dance','pingpong']},
{name:"小米",age:12,sex:'m',hobby:['draw','dance','football']},
{name:"小小",age:14,sex:'f',hobby:['draw','basketball','football']},
{name:"小康",age:15,sex:'m',hobby:['draw','basketball','pingpong']}
])

4. 查找

查看班级所有人信息

db.class.find()

查看班级中年龄为8岁的学生信息

db.class.find({age:8})

查看年龄大于10岁的学生信息

db.class.find({age:8})

在这里插入图片描述
查看年龄在 4—8岁之间的学生信息

db.class.find({age:{$gte:4,$lte:8}})

在这里插入图片描述
找到年龄为6岁且为男生的学生

db.class.find({age:6,sex:"m"})

在这里插入图片描述

找到年龄小于7岁或者大于10岁的学生

db.class.find({$or:[{age:{$lte:7}},{age:{$gte:10}}]})

在这里插入图片描述

找到年龄是8岁或者11岁的学生

db.class.find({age:{$in:[7,11]}})

在这里插入图片描述

找到兴趣爱好有两项的学生

db.class.find({'hobby':{$size:2}})

在这里插入图片描述
找到兴趣爱好有draw的学生

db.class.find({'hobby':'draw'})

在这里插入图片描述
找到既喜欢画画又喜欢跳舞的学生

db.class.find({'hobby':{$all:['draw','dance']}})

在这里插入图片描述
统计爱好有三项的学生人数

db.class.find({'hobby':{$size:3}}).count()

找出本班年龄第二大的学生

db.class.find({}).sort({age:-1}).skip(1).limit(1)

查看学生的兴趣范围

db.class.distinct('hobby')

将学生按年龄排序找到年龄最大的三个

db.class.find({}).sort({age:-1}).limit(3)

在这里插入图片描述

删除所有 年级大于12或者小于4岁的学生

db.class.remove({$or:[{age:{$lt:4}},{age:{$gt:12}}]})

5. 增加、更新、删除、统计

将小红的年龄变为8岁 兴趣爱好变为 跳舞 画画

db.class.update({'name':'小红'},{$set:{'age':8,'hobby':['dance','draw',]}})

在这里插入图片描述

追加小明兴趣爱好 打篮球

db.class.update({'name':'小明'},{$push:{'hobby':'basketball'}})

小李兴趣爱好增加 吹牛 打篮球

db.class.update({'name':'小李'},{$pushAll:{'hobby':['basketball','computer']}})

小李增加爱好,跑步和唱歌,但是不要和以前的重复

db.class.update({'name':'小李'},{$addToSet:{'hobby':{$each:['run','sing']}}})

在这里插入图片描述

该班所有同学年龄加1

db.class.update({},{$inc:{age:1}},false,true)

在这里插入图片描述

删除小明的sex属性

db.class.update({name:'小明'},{$unset:{sex:0}})

删除小李兴趣中的第一项

db.class.update({name:'小李'},{$pop:{hobby:-1}})

将小红兴趣中的画画爱好删除

db.class.update({name:'小红'},{$pull:{hobby:'draw'}})

6.增加分数域

按照性别分组统计每组人数

db.class.aggregate({$group:{_id:'$sex',num:{$sum:1}}})

在这里插入图片描述

按照姓名分组,过滤出有重名的同学

db.class.aggregate([{$group:{_id:'$name',num:{$sum:1}}},{$match:{num:{$gt:1}}}])

统计每名男生的语文成绩

db.class.aggregate([{$match:{sex:'m'}},{$project:{_id:0,name:1,'score.chinese':1}}])

在这里插入图片描述

将女生按照英语分数降序排列

db.class.aggregate([{$match:{sex:'f'}},{$sort:{'score.english':-1}}])

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/4073.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot集成Redisson实现分布式锁

Spring Boot集成Redisson实现分布式锁 在分布式系统中,为保证数据的一致性和并发访问的安全性,我们经常会使用分布式锁来协调多个节点之间对共享资源的访问。Redisson是一个基于Redis的Java驻内存数据网格(In-Memory Data Grid)和…

centos 安装pyzbar

需求: 运行程序报错 ImportError: Unable to find zbar shared library 进程: 直接使用yum 安装 yum install python-devel && yum install zbar-devel 有时候会能成功,大多数时候python-devel 能成功但是 zbar-devel 会失败 下载…

TCP四次挥手过程

TCP 断开连接是通过四次挥手方式。 双方都可以主动断开连接,断开连接后主机中的「资源」将被释放, 刚开始双方都处于 establised 状态,假如是客户端先发起关闭请求,过程如下图: 第一次挥手:客户端打算关闭…

Ae 效果:CC Mr. Smoothie

风格化/CC Mr. Smoothie Stylize/CC Mr. Smoothie CC Mr. Smoothie(平滑先生)效果可以从一个图层上的两个点进行颜色采样,并将这个两点之间的颜色重映射到另一个图层上,可通过控制重映射的平滑度从而创建迷幻的外观效果。 ◆ ◆ …

JVM中的堆和栈到底存储了什么

JVM数据区 先上一张Java虚拟机运行时数据区中堆、栈以及方法区存储数据的概要图,如下所示: 然后我们来具体解析一下堆和栈 堆 堆是存储时的单位,对于绝大多数应用来说,这块区域是 JVM 所管理的内存中最大的一块。线程共享&#…

基于 ChatGPT 的 helm 入门

1. 写在最前面 公司最近在推业务上云(底层为 k8s 管理),平台侧为了简化业务侧部署的复杂度,基于 helm 、chart 等提供了一个发布平台。 发布平台的使用使业务侧在不了解 helm 、chart 等工具的时候,「只要点点」就可…

在DELL/HP server的UEFI mode下指定ISO安装Ubuntu

1.重启系统 在蓝色界面出现提示后选择F2进入 然后保存设置即可 下面是惠普server的iol5界面 输入f9进入system utilities 选择ISO 选择reset

微服务系列文章 之 SpringCloud中遇到的一些bug

1、There was a problem with the instance info replicator 错误原因: 该服务尝试将自己作为客服端注册解决办法: 在application.yml配置文件中,设置 # 注册Eureka服务 eureka:client:# Eureka服务注册中心会将自己作为客户端来尝试注册它自…

Django实现接口自动化平台(十四)测试用例模块Testcases序列化器及视图【持续更新中】

相关文章: Django实现接口自动化平台(十三)接口模块Interfaces序列化器及视图【持续更新中】_做测试的喵酱的博客-CSDN博客 本章是项目的一个分解,查看本章内容时,要结合整体项目代码来看: python django…

Debian 12上如何关闭nobody共享文件夹,一个能让INSCODE AI 创作助手不知所措的小问题

这个问题之前在Debian 10和11上都没有遇到过,换上Debian 12后Samba的设置就出现了状况,装上Samba后什么都没有设置就在局域网可以看到: 根据之前的经验在/etc/samba/smb.conf里查了很久也没有看出所以然来,后来又问了INSCODE AI…

Waves 14 Complete对Mac和Windows系统的最低要求

Waves 14 Complete是一款功能齐全的音频编辑软件,适用于音乐制作、音频工程和声音设计等领域。它提供了一系列强大的工具和效果,帮助用户在音频处理过程中实现专业水平的效果和混音。 Waves 14 Complete包含了多个实用的插件,如均衡器、压缩…

【100天精通python】Day5:python 基本语句,流程控制语句

目录 1. 条件语句 1.1 if语句 1.2 if-else语句 1.3 if-elif-else语句 2 循环语句 2.1 for循环 2.2 while循环: 3 跳转语句 3.1 break语句 3.2 continue语句 3.3 pass语句 4 异常处理语句(try-except语句) 5 语句嵌套 5.1 条…

unity 调用C++ dll 操作升级套娃函数调用

之前一直以为C生成dll,在unity中调用时要把传出去的值设置在主函数中,以参数或反回值的形式。 当然在DLL工程中可以说没有主函数,那个可以运行一个函数,其会调用其他函数从而一直调其他相关函数。 那问题是在层级是二或三------…

前端工程中的设计模式应用

本文旨在系统性介绍一下23种设计模式,给出通俗易懂的案例、结构图及代码示例,这也是我自身学习理解的过程。或许其中的几种设计模式写的并不是很清晰明了易懂,更详细的可根据提到的参考文献进行深入学习。 什么是设计模式 设计模式这个概念是…

Java解决new date出现的时区问题(差8小时)

1、设置当前时区 SimpleDateFormat format new SimpleDateFormat("yyyy/MM/dd"); format.setTimeZone(TimeZone.getTimeZone("GMT8:00")); 2、设置全局时区 创建一个全局配置类,用于配置项目全局时区。 这样就不用专门在各个地方设置时区了…

干货!3个技巧让你轻松增强客户实时聊天的体验感

在当今竞争激烈的商业环境中,提供出色的客户服务成为企业成功的关键要素之一。尤其是在实时聊天平台上,为客户提供优质的体验感,对于建立良好的客户关系和提高销售转化率至关重要。如果你还在苦恼如何增强用户体验感,苦恼如何增加…

剑指offer刷题笔记--Num51-60

1--数组中的逆序对&#xff08;51&#xff09; 主要思路&#xff1a; 基于归并排序&#xff0c;视频讲解参考&#xff1a;数组中的逆序对 #include <iostream> #include <vector>class Solution { public:int reversePairs(std::vector<int>& nums) {if(…

iOS-Block

Blocks的学习 Block的分类 Block根据其类型可以分为三类&#xff1a; 全局Block&#xff08;NSGlobalBlock&#xff09;栈Block&#xff08;NSMallocBlock&#xff09;堆Block&#xff08;NSStackBlock&#xff09; 而其区分的规则为&#xff1a; 如果没有引用局部变量&…

arping命令 ip地址冲突检测 根据ip查mac地址

arping命令介绍 arping 命令主要用来获取ip对应的mac地址&#xff0c;更新本地arp缓存表。平时主要用来探测ip地址是否冲突即同一个网络里&#xff0c;同一个ip不同mac地址的情况。ip地址冲突将导致网络故障。 arping常用命令参数 arping [参数] ip -U 强制更新邻近主机的a…

关于电脑显示器屏幕看不出灰色,灰色和白色几乎一样无法区分,色彩调整方法

问题&#xff1a; 电脑显示器屏幕看不出灰色&#xff0c;灰色和白色几乎一样无法区分。白色和灰色有色差。 解决方法&#xff1a; 打开“控制面板” ->“色彩管理” ->“高级” ->“校正显示器” 在下一步调节中调成中间这一个实例的样子就可以了 进行微调&#x…