目录
redis
string类型数据
(1) 设置键值
127.0.0.1:6379[1]> set key1 1
OK
(2) 读取键值
127.0.0.1:6379[1]> get key1
"1"
(3) 数值类型自增1
127.0.0.1:6379> INCR key1
(integer) 2
127.0.0.1:6379> get key1
"2"
(4) 数值类型自减1
127.0.0.1:6379> decr key1
(integer) 1
127.0.0.1:6379> get key1
"1"
(5) 查看值的长度
127.0.0.1:6379> strlen key1
(integer) 1
list类型数据
(1)对列表city插入元素:Shanghai Suzhou Hangzhou
127.0.0.1:6379> lpush list1 Shanghai Suzhou Hangzhou
(integer) 3
(2)将列表city里的头部的元素移除
127.0.0.1:6379> lpop list1
"Hangzhou"
(3) 对一个已存在的列表插入新元素
127.0.0.1:6379> rpush list1 askdj
(integer) 3
查看
127.0.0.1:6379> lrange list1 0 -1
1) "Suzhou"
2) "Shanghai"
3) "askdj"
(4)查看list的值长度
127.0.0.1:6379> llen list1
(integer) 3
hash类型数据
(1) 设置一个hash表,order表里包括的键值信息有:id:1,customer_name:张三
127.0.0.1:6379> HMSET order id 1 customer_name “张三”
OK
(2) 创建一个hash表,表里的键值批量插入
127.0.0.1:6379> HMSET order id 1 customer_name “张三” order_date “2023-07-17”
OK
(3) 获取order对应的map的所有key
127.0.0.1:6379> HKEYS order
1) "id"
2) "customer_name"
3) "order_date"
(4) 获取order对应的map的键值数量
127.0.0.1:6379> HLEN order
(integer) 3
(5) 获取order表里的id值
127.0.0.1:6379> HGET order id
"1"
(1)判断键是不是存在
127.0.0.1:6379> hexists order id
(integer) 1
1表示存在
(2)查看键的过期时间
127.0.0.1:6379> ttl order
(integer) -1
-1代表永不过时
1
2
3
(3)查找满足pattern的keys
KEYS pattern*
(4)遍历链表元素
127.0.0.1:6379> lrange list1 0 -1
1) "Suzhou"
2) "Shanghai"
MongoDB
1. 创建一个数据库 名字grade
use grade
2. 数据库中创建一个集合名字 class
db.createCollection("class")
3. 集合中插入若干数据
插入如下数据:
db.class.insert({name:'zhang',age;10,sex:'m',hobby:['dance','sing','draw']})
db.class.insert({name:'zhang',age:10,sex:'m',hobby:['dance','sing','draw']})
db.class.insert({name:'zhan',age:6,sex:'w',hobby:['sing','draw']})
db.class.insert({name:'zan',age:16,sex:'w',hobby:['draw']})
db.class.insert({name:'li',age:5,sex:'m',hobby:['ball','sing','draw']})
查看班级所有人信息
db.class.find()
查看班级中年龄为8岁的学生信息
db.class.find({age:8})
查看年龄大于10岁的学生信息
db.class.find({age:{$gt:10}}).pretty()
pretty() 只是让格式好看,可以不加
查看年龄在 4—8岁之间的学生信息
db.class.find({age:{$gte:4,$lte:8}})
找到年龄为6岁且为男生的学生
db.class.find({age:{$eq:10},sex:"m"})
找到年龄小于7岁或者大于10岁的学生
db.class.find({$or:[{age:{$gt:10,$lt:7}}]})
找到年龄是8岁或者11岁的学生
db.class.find({$or:[{age:{$eq:8,$eq:11}}]})
找到兴趣爱好有两项的学生
db.class.find({ hobby: { $size: 2 } })
找到兴趣爱好有draw的学生
db.class.find({hobby:'draw'})
找到既喜欢画画又喜欢跳舞的学生
db.class.find({hobby:{$all:['dance','draw']}})
找出本班年龄第二大的学生
db.class.find().sort({age: -1}).skip(1).limit(1)
-1 代表降序排,skip 1 代表取第二条数据往后的数据,limit 1 代表取出第一条
找到兴趣爱好有两项的学生
db.class.find({hobby:{$size:2}})
将学生按年龄排序找到年龄最大的三个
db.class.find().sort({age: -1}).skip(0).limit(3)
查看学生的兴趣范围
db.class.find({},{_id:0,hobby:1})
删除所有 年级大于12或者小于4岁的学生
db.class.deleteMany({$or:[{age:{$gt:12}},{age:{$lt:4}}]})