Redis命令笔记

通用操作

keys *查看当前库所有key(匹配:keys *1)
exists key判断某个key是否存在
type key查看key类型
del key删除指定key
unlink key根据value选择非阻塞删除
expire key 10 设置10秒过期时间
ttl key查看key还有多久过期(-1永不过期,-2已过期)

select命令切换数据库(redis有16个库默认使用第0个)
dbsize查看当前数据库的key数量
flushdb清空当前库
flushall清空所有库

String数据类型操作

set <key> <value>添加键值对
get <key>获取键值
append <key> <value>将给定的value追加到原始值的末尾(返回值是长度)
strlen <key>计算value长度
setnx <key><value>只有key不存在时,设置key的值
incr <key>将数值value+1
decr <key>将数值value-1
incrby/decrby <key> <步长>将数值value +步长/-步长

redis对值设置不会受线程影响得益于redis是单线程的

mset <key1> <value1> <key2> <value2>....同时设置一个或多个键值对
msetnx <key1> <value1> <key2> <value2>....同时设置一个或多个键值对,当且仅当所有给定的key都不存在
mget <key1> <key2>...同时获取一个或多个key的value
getrange <key> <起始位置> <结束位置>获取value的一段类似String的substring索引从0开始
setrange <key> <起始位置> <value>从中间插入
setex <key> <过期时间> <value>设置键值的时候同时设置有效期(秒)
getset <key> <value>设置新值同时获取旧值

List数据类型操作

lpush/rpush <key> <value1> <value2>...从左边/右边插入一个或多个值
lpop/rpop <key>从左边/右边吐出一个值。值在键在,值光键亡
rpoplpush <key1> <key2>从key1右边吐出一个值,插入到key2左边
lrange <key> <start> <stop>按照元素下标获取元素从左到右----0左边第一个,-1右边第一个(0 -1)表示获取所有
lindex <key> <index>按照索引下标获取元素,从左到右0开始
llen <key>获取列表长度
linsert <key> before/after <value> <newvalue>在value的前面/后面插入newvalue
lrem <key> <n> <value> 从左边开始删除n个value
lset <key> <index> <value> 将列表key下标为index的值改为value

Set数据类型操作(无序的,不重复的)

sadd <key> <value1> <value2>...将一个或者多个元素加入到集合key中,已经存在的会被忽略
smembers <key>获取key的所有值
sismenber <key> <value>判断key是否含有value值,有1无0
scard <key> 返回集合元素个数
srem <key> <value1> <value2>...删除一个或多个元素
spop <key> 随机吐出一个值,如果取完了key也消失
srandmenber <key> <n>随机取出n个值,不会从集合中删除
smove <source> <destination> <value>把集合中一个值移动到另一个集合中
sinter <key1> <key2>返回两个集合的交集元素
sunion <key1> <key2>返回两个集合的并集元素
sdiff <key1> <key2>返回两个集合的差集元素(key1中的,不包含key2的)

Hash数据类型操作

(hash是一个string类型的field和value的映射表特别适合存储对象【类似java的Map<String.Object>】)

hset <key> <field> <value><key>集合中的<field>键赋值<value>
hget <key> <field> 获取field的value
hmset <key> <field1> <value1> <field2> <value2>...批量赋值
hexists <key> <field>查看key是否包含field   0无1有
hkeys <key> 列出hash集合的所有field
hvals <key> 列出hash集合的所有value
hincrby <key> <field> <increment>为哈希表key中的域field的value加上增量1 -1
hsetnx <key> <field> <value>将哈希表key中的域field的值设置为value,当且仅当域field不存在

Zset数据类型操作(有序 没有重复)

zadd <key> <score1> <value1> <score2> <value2>... 将一个或多个元素及其score(评分)值加入到有序集key
zrange <key> <start> <stop> [withscores] 返回下标在<start> <stop>之间的元素 带上withscores则连带返回评分
zrangebyscore <key> <min> <max> [withscores] 返回评分在<min> <max>之间的field按score从小到大排序 带上withscores则连带返回评分
zrevrangebyscore key <max> <min> [withscores] 同时排序从大到小
zincrby <key> <increment> <value> 为元素的score加上增量
zrem <key> <value>删除该集合下,指定值的元素
zcount <key> <min> <max> 统计该集合,分数区间内的元素个数
zrank <key> <value>返回该值在集合中的排名,从0开始
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值