redis的入门篇---五种数据类型及基本操作
查看所有的key
keys *
清空所有的key
flushall
检查key是否存在
exists key
设置已存在的key的时长
expire key 10 //设置key为10s
查看key还剩多少时长
ttl key //-1是永久 -2是不存在
查看key的类型
type key
随机取出一个key
randomkey
重命名key
rename key newkey //如果key存在 直接覆盖
renamenx key newkey //如果key存在 则失败 返回0
设置一定时间的key
setex key seconds val //key 时间 val
psetex key seconds val //和上面的功能一样 只不过多加一个p 区别是上面的时间是秒级别的 这个是毫秒级别的
字符串类型:
得到指定范围的字符串
getrange key 0 2 //闭合区间 取三个长度的字符串
得到旧的值并赋予新的值
getset key newval //比如说get a 得到A //然后getset a AA 还是得到A //但此时get a 得到的是AA
在字符串后面追加字符串
append key append //意思是在key的val后面加上append字符串
hash哈希(其实就是一个Map<String,Map<String,String>>格式的数据结构)
设置值
hset map name liuzhonghua //成功1
检验是否存在
hexists map name //存在1 不存在0
得到值
hget map name //返回liuzhonghua
得到key所有的值
hgetall map //返回 下面的这中格式 key val key val name liuzhonghua age 23 sex man
得到值里面所有的key 和所对应的val
hkeys map //返回 name age sex
hvals map
liuzhonghua
23
man
list列表
lpush list 1 2 3 4 5 6 //lpush 特点是最后放进去的总是在第一位
取一定范围的list值和特定索引的值
lrange list 0 2 //得到1 2 3 lindex list 3 //得到4
移除最后一个元素和第一个元素
lpop list //移除第一个元素 6 返回6 rpop list //移除最后一个元素 1 返回1
将指定下标元素替换
lset list 0 a //将下标为0的元素替换成a
删除元素,返回元素个数
LREM KEY_NAME COUNT VALUE // 被移除元素的数量。 列表不存在时返回 0 。
set列表(特点:无序,不保证你放进去的和得到的顺序一致,值不重复)
增加
sadd set a b c d //key是set val 是 a b c d
得到这个集合的数量
scard set //返回4
查看key的val
smembers set //a b c d
两个集合的差集
sdiff set1 set2 //意思是set1 里面的值减去 set2里面的值 得到set1里面的值
两个集合的交集
sinter set1 set2
两个集合的并集
sunion set1 set2
返回指定数量的随机数
srandmember set1 2 //随机返回set1的两个值
判断是否是集合的元素
sismember set1 a //如果是 返回1 否则返回0
移除指定的val
srem set1 a b //移除set1集合里面的a和b 返回成功的个数 2
随机移除set里面的val 并返回移除的值
spop set1 //随机返回一个值
zset (有序集合,不重复)
增加(还得必须这样写 真操蛋 看不懂 后面都是一对一对的 艹,,,我懂了,100这样的数值是必须写的,因为是靠他们排序的,我们平常获取的值都是abc
这样的,切记)填坑,很有用这样的属性!!!!!!!!!!!!!
zadd zset 100 a 200 b 300 c // key是zset a的分数是100 b的分数是200 c的分数是300
查看有几个元素
zcard zset //返回3
查看指定的某个值(还得必须这样写 )
zscore zset a //返回100
返回符合指定区间的数量
zcount zset 0 200 //返回2 闭合区间 就是说a 和 b 他俩所对应的值在0和200之间 符合要求
查看索引
zrank zset a //0 zrank zset b //1 zrank zset c //2
增加值
zincrby zset 1000 a //意思是让a的值增加1000 当然a的顺序也会改变,因为zset是有序的 是根据他所对应的值来排序的
获取指定的元素
zrange zset 0 100 //意思是获取zset的前100个元素 a b c
如果想获取一对一对的 比如说 a 100 b 200 c 300
zrange zset 0 100 withscores
高能预警:介绍几个常用的方法 (zset有序集合的方法)
Redis Zremrangebyrank 命令: http://www.runoob.com/redis/sorted-sets-zremrangebyrank.html
Redis Zremrangebyrank 命令用于移除有序集中,指定排名(rank)区间内的所有成员。 返回 被移除成员的数量。
Redis Zrevrange 命令 : http://www.runoob.com/redis/sorted-sets-zrevrange.html
Redis Zrevrange 命令返回有序集中,指定区间内的成员。其中成员的位置按分数值递减(从大到小)来排列
相关文章
- Redis学习(5)-Jedis(Java操作redis数据库技术)
- Redis的Python客户端redis-py的初步使用
- Redis几个认识误区(转)
- Redis-Cluster实战--5.使用redis-cli安装
- redis 可视化工具
- Redis两种秒杀抢购思路
- NoSQL之Redis(四)--- RedisCluster概念以及搭建
- Prometheus 基于endpoints服务发现监控redis
- linux snap安装redis-desktop-manager
- redis主从同步原理---原生以及 基于binlog的主从同步不
- Atitit redis使用 attilax 艾提拉总结 1.1. Redis默认有16个库,默认连接的是 index=0 的那一个。解决与原来不方便查询查看的问题1 1.2. redis不是现
- Java实现Redis持久化到数据库的关键方法
- 【服务器安装Redis】Centos7离线安装redis
- 〖Python 数据库开发实战 - Python与Redis交互篇②〗- 利用 redis-py 实现字符串类型的常用指令操作
- 〖Python 数据库开发实战 - Python与Redis交互篇⑤〗- 利用 redis-py 实现哈希数据类型的常用指令操作
- 〖Python 数据库开发实战 - Python与Redis交互篇⑨〗- 利用 redis-py 实现模拟商品秒杀活动案例
- 面试官:请讲一下Redis主从复制的功能及实现原理
- 突破开源Redis的内存限制,存算分离的GaussDB到底有多能“装”?
- Redis的那些事儿:关系型和非关系型数据库,非关系型数据库的类型,redis数据类型、编码格式、高性能、可以做什么、分布式锁失效的原因,string为采用sds数据类型,为什么是二进制安全的,
- 387集Go语言核心编程培训视频教材整理 | Redis(一)
- redis 哨兵机制环境搭建
- Django中redis的使用方法(包括安装、配置、启动)
- 深入学习Redis(3):主从复制
- Redis进阶学习04---秒杀优化和消息队列
- 【服务器安装Redis】Centos7离线安装redis
- 【redis】Redis为什么能抗住10万并发?
- 【云原生 | Kubernetes 系列】---Prometheus监控Redis