Redis基本命令

Redis基本命令

select [index]
选择库

keys *
查询当前库中的所有key

exists [key]
判断这个key是否存在
返回 1: 表示key存在 0: 表示key不存在

type [key]
判断这个key的类型

del [key]
删除这个key
返回 1: 表示删除key成功 0: 表示删除key失败

expire [key] [seconds]
给一个key设置过期时间 单位 秒

ttl [key]
查看该key 还有多少秒过期 -1: 表示永远不过期 -2: 表示已过期

dbsize
查看当前数据的key的数量

flushdb
清空当前数据库

flushall
清空所有库

  1. string

最大512M

set [key] [value]
设置key value

get [key]
获取这个key的 value

append [key] [value]
给指定额key 追加value

strlen [key]
获取value的值得长度

setnx [key] [value]
如果key’不存在设置key的值

incr [key]
对指定key 自增一 只对数字值有效 为空则值为1
他是原子性的 不会因为线程的调度打断操作

decr [key]
对指定key 自减一 只对数字值有效 为空则值为-1
他是原子性的 不会因为线程的调度打断操作

incrby/decrby [key] [步长]
与上相同 可以自定义步长
他是原子性的 不会因为线程的调度打断操作

mset [key1] [value1] key2] [value2] …
同时设置多个key value

mget[key1] [key2] …
同时获取多个value

msetnx [key1] [value1] key2] [value2] …
同时设置多个key value 当key 不存在是

getrange [key] [起始位置] [结束位置]
获取value的指定范围 类似于Java 的 substring

setrange [key] [起始位置] [value]
用value覆写key所储存的字符串值,
从 起始位置 开始。

setex [key] [过期时间] [value]
设置key value 时 同时设置过期时间

getset
设置新值 获取旧值

  1. list
    它是一个字符串链表,left、right都可以插入添加;
    如果键不存在,创建新的链表;
    如果键已存在,新增内容;
    如果值全移除,对应的键也就消失了。
    链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡了。

单键多值

lpush/rpush [key] [value]…
从左侧/右侧 插入一个或多个值

lpop/rpop key
从左侧/右侧吐出一个值 值在键在 值光键亡

rpoplpush [key1] [key2]
从key1列表的右侧吐出一个值 插入到key2的左侧

lrange [key] [start] [stop]
按照索引下标获得元素(从左到右)
0 是表头 -1 是表尾

lindex [key] [index]
按照索引下标获得元素(从左到右)

llen [key]
获取列表长度

lrem [key] [正数/零/负数] [值]
删除指定key list中的值

正数代表 从左往右删 几个值
负数代表 从右往左删 几个值
零 表示 删除全部的 这个值

ltrim [key] [起始索引] [结束索引]
截取指定索引区间的元素

linsert [key] before/after [值1] [值2]
在list某个已有值的前后再添加具体值

  1. set

他是以个无序的集合 不可重复的集合
他的底层就是一个value为null 的hash表

sadd [key] [value] [value] [value] …
添加元素

smembers [key]
查看set中所有元素

sismember [key] [value]
查看set中是否存在这个元素

scard [key]
获取集合里面的元素个数

srem [key] [value] …
删除集合中元素

spop [key]
随机出栈
出栈之后删除

srandmember [key]
随机出几个数
不删除

sdiff [key1] [key2]
差集

sinter [key1] [key2]
交集

sunion [key1] [key2]
并集

  1. hash
    Redis中的hash就是一个键值对 类似于 Java 中的Map<String,String>

hset [key] [field] [value]
设置hash 值

hget [key] [field]
获取hash 的值

hmset [key] [field] [value] [field] [value] …
批量 设置hash 值

hmget
批量 获取hash 的值

hgetall
获取这个key 下的所有的 field value

hdel [key]
删除这个key

hdel [key] [field]
删除这个key 中的这个 field

hlen [key]
这个hash的长度

hexists [key] [field]
判读这个 field是否存在

hkeys [key]
获取这个key 下的所有的 field

hvals [key]
获取这个key 下的所有的 value

hincrby [key] [field] [步长]
field的value 增加 步长 可以为负数

hsetnx [key] [field] [value]
field不存在新增

  1. zset
    Redis有序集合zset与普通集合set非常相似,是
    一个没有重复元素的字符串集合。不同之处是有序集合
    的每个成都关联了一评分(score) ,这个平分
    (score)被用来按照从最低分到最高分的方式排序集
    合中的成员。集合的成员是唯一的,但是评分可以是重
    复了
    因为元素是有序的,所以你也可以很快的根据评分
    (score)或次序(position)来获取一个范围的元
    素。访问有序集合的中间元素也是非常快的,因此你能够
    使用有序集合作为一个没有重复成员的智能列表。

zadd [key] [score] [value] [score] [value] …
添加zset
key: 键
score: 分数
value: 值
相同元素 相同分数 不会改变
相同元素 不同分数 改变分数
不同元素 相同分数 可以添加

zrange [key] [开始下标] [结束下标]
查询key 所对应的值
0 是表头 -1 是表尾

zrangebyscore [key] [开始score] [结束score]
查询key 分数对应的范围

zrevrange [key] [开始下标] [结束下标]
根据下标倒叙
0 是表头 -1 是表尾

zrevrangebyscore [key] [开始分数] [结束分数]
根据分数倒叙

zcard [key]
zset 的长度

zincrby [key] [自增分数] [元素]
自增分数

zrem [key] [元素]
删除zset 中的元素

zcount [key] [开始分数] [结束分数]
该zset 下的开始分数和结束分数之间的 元素个数

zrank [key] [元素]
返回该元素 在zset中的排名 0开始

zrevrank [key] [元素]
返回该元素 在zset中的倒叙排名 0开始

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值