'''redis'''
# 启动 redis-server
# 本地 redis-cli
# 远程 redis-cli -h 127.0.0.1 -p 6379
# 退出 exit
# redis 默认16个数字库,分别从0-15,每个数字代表一个数据库
# 进入数据库 select 7 进入7号数据库,默认进入0号数据库
# 在redis中,数据以键值对形式存在 value有5种类型
# string 类型
# 添加键值对 set 键 值
# 添加多对键值对 mset 键 值 键 值 键 值
# 查看值 get 键
# 查看多个值 mget 键 键 键
# 查看键 keys * (查看所有的键 ,与正则通配符使用类似 )
# 删除键 del 键 (后面接多少个键就删除多少个键)
# 查看值的类型 type 键
# 查看这个键是否存在 exists 键 (如果存在返回1,反之返回0)
# 设置过期时间 expire key 120(120表示秒数)
# 查看过期时间 ttl 键 (返回-1,表示永久存在,返回-2,表示不存在,返回自然数,表示时间剩余)
# 针对有过期时间的键设置为永久 persist 键
# list类型
# 清空所有数据库里的所有数据 flushall
# 栈 先进后出 lpush li_1(键名) 3 4 5 (元素)
# 队列 先进先出 rpush li_1 1 2(左右添加不会数据造成影响)
# 列表的查询 lrange li_1 0 -1 (查看li_1从开始到最后)
# 指定下标读取 lindex li_1 2 (查看下标为2的值)
# 左删除 lpop li_1 右删除 rpop li_1
# 删除指定个数元素 +表示从左删除 -表示从右删除
# lrem li_1 2 a 表示从左删除2个a
# lrem li_1 -2 a 表示从右删除2个a
# 删除全部指定元素 lrem li_2 0 a (0表示全部) 删除全部的a
# hash(哈希) 类型 (可以理解为user-keys-values)
# 添加 hset bd name leftcat
# 添加多个 hmset bd name leftcat age 18
# 查看一个值 hget bd name 查看多个值 hmget bd name size
# 获取哈希类型里面的所有keys: hkeys bd
# 获取哈希类型里面的所有values: hvals bd
# 获取哈希类型里面所有的键值对: hgetall bd
# 判断哈希类型的值是否存在 hexists bd name (存在就返回1,不存在就返回0)
# 删除哈希类型的键 hdel bd name
# 集合类型(无序)
# 添加 sadd se1 1 2 3 4 a
# 查看集合 smembers se1
# 删除 srem se1 a
# 随机删除指定个数元素 spop se1 2
# 随机取出元素 (正数不存在重复元素,负数可能存在重复元素)
# srandmember sel 2(在se1中随机取出两个不重复元素)
# srandmember sel -2(在se1中可能随机取出两个重复元素)
# 返回元素个数 scard se1
# 求交集 sinter se1 se2
# 要将取得的交集保存起来 sinterstore se3(新集合名) se1 se2
# 求并集 sunion se1 se2
# 要将取得的并集保存起来 sunionstore se3(新集合名) se1 se2
# 求差集 sdiff se1 se2
# 要将取得的并集保存起来 sdiffstore se3(新集合名) se1 se2
# 有序集合
# 添加内容 zadd math(键) 100(分数) bd(元素) 90 leftcat
# 查看元素 zcard math
# 查看分数 zscore math bd
# 以分数从小到大排名 zrange math 0 -1 withscores
# 以分数从大到小排名 zrevrange math 0 -1 withscores
# 删除元素 zrem math bd
# 获取指定分数范围内的元素个数 zcount math 20 60 (查看20分到60分之间的元素总数)
# 获取指定分数范围内的元素 zrangebyscore math 60 90 (查找60分到90分的元素) zrangebyscore math (60 90 (查找大于60分到90分的元素)
# zrangebyscore math (60 (90 (查找大于60分到小于90分的元素)
# 删除元素 zrem 键 元素
# 删除排名内的元素 zremrangebyrank math 0 2 (删除从0到2的三个元素)
# 删除分数内的元素 zremrangebyscore math 60 90 (删除从60分到90分的元素)
# 有序集合只有交集和并集 # 求交集和并集会把两个相同元素的分数相加
# 求交集 zinterstore se3(新集合名) 2(求交集的集合个数) se1 se2
# 求并集 zunionstore se3(新集合名) 2(求交集的集合个数) se1 se2
2021-09-12 redis
最新推荐文章于 2024-08-19 14:41:29 发布