常用基础命令
keys *
查看所有的键
exists a
查看是否存在键a
ttl a
返回-1 代表永久 返回-2 代表不存在
type
查看数据类型
radomkey
随机查看key
rename
重命名键名,如果redis中已经存在该键名,直接覆盖。在生产环境中很难用到。
renamenx
重命名键名,会进行条件判断,如果redis中已经存在该键名,不会做任何修改。在生产环境中经常用到。
String字符串操作命令
set
set a a
设置值
将字符串值 value 关联到 key 。
如果 key 已经持有其他值, SET 就覆写旧值,无视类型。
对于某个原本带有生存时间(TTL)的键来说, 当 SET 命令成功在这个键上执行时, 这个键原有的 TTL 将被清除。
get
get a
获取值
setex
setex a 100 a
指的是给a这个键设置100秒的有效期
psetex
psetex a 10000 a
指的是给a这个键设置10000毫秒(10秒)的有效期
getrange
getrange a 0 2
指的是拿到a这个键里面0到2这个闭合区间的值
getset
getset a aa
指的是拿到a这个键的旧值,然后再把这个键的值设置为aa
mset
mset a a b b c c
指的是批量String类型的键值对
mget
mget a b c
指的是批量取出值
setnx
setnx a a
设置值的时候会做键判断,如果键存在,不成功返回0。如果键不存在,设置成功,返回1
msetnx
msetnx a a b b
批量设置键值对,设置的时候会做键判断。如果存在,设置失败。并且具有事务的原子性,要么都成功,要么都失败。
incr
incr a
对a键里面的integer类型的值进行加1,如果a键里面的值不是integer类型,报(error) ERR value is not an integer or out of range错误
incrby
incrby a 100
对a键里面integer类型的值加步长100
decr
decr a
对a键里面的integer类型的值进行减1,如果a键里面的值不是integer类型,报(error) ERR value is not an integer or out of range错误
decrby
decrby a 100
对a键里面integer类型的值减步长100
append
append a appendstr
对a键里面的值拼接字符串
strlen
strlen a
获取键值的字符串长度
哈希hash操作命令
hset
hset a name wxh
设置键为a,键a里面的对象为name wxh
hsetnx
hsetnx a name wxh
设置值,会判断a键中是否存在name属性。如果存在,设置失败
hexists
hexists a name
判断a键里面是否有属性name的值
hget
hget a name
取出a键里面的属性name的值
hgetall
hgetall a
取出a键里面所有的对象值
hkeys
hkeys a
取出a键里面所有的属性
hvals
hvals a
取出a键里面所有的值
hlen
hlen a
取出a键里面key的个数
hmget
hmget map name age
批量取出map键里面name age属性的值
hmset
hmset map newvalue0 newvalue0 newvalue1 newvalue2
批准设置map键里面的值
hdel
hdel map newvalue0 newvalue1
批量删除map里面的newvalue0 newvalue1
列表list操作命令
lpush
lpush list 1 2 3 4 5 6
设置一个键名为list的列表,值为6 5 4 3 2 1
llen
llen list
查看列表list的长度
lrange
lrange list 0 2
取出列表的前三个值
lset
lset list 0 100
将列表0位置索引设置为100
lindex
lindex list 5
获取list列表索引为5的元素
lpop
lpop list
移除列表第一个元素
rpop
rpop list
移除列表最后一个元素
集合set操作命令
sadd
sadd set a b c d
添加集合,集合内的值不能重复
scard
scard set
返回集合的数量
smembers
smembers set
查看集合内的元素成员
sdiff
sdiff set1 set2
返回两个集合的差集
差集的结果来自前面的 FIRST_KEY ,而不是后面的 OTHER_KEY1,也不是整个 FIRST_KEY OTHER_KEY1..OTHER_KEYN 的差集。
实例:
sinter
sinter set1 set2
返回两个集合的交集。
实例:
sunion
sunion set1 set2
求两个集合的并集
实例:
srandmember
srandmember set 2
返回集合中的2个随机元素
sismember
sismember set a
判断a是否是集合set中的元素,返回1 代表存在,返回0 代表不存在
srem
srem set a b
移除集合set中a,b两个元素
spop
spop set
移除集合set中的一个元素,并返回这个元素
有序集合sortedset操作命令
zadd
zadd sortedset 100 a 200 b 300 c
添加有序集合
zcard
zcard sortedset
返回有序集合的数量
zscore
zscore sortedset a
返回有序集合内a的数据
zcount
zcount sortedset 0 200
返回有序集合内0到200的数据有几个
zrank
zrank sortedset a
返回有序集合内a属性的索引
zincrby
zincrby sortedset 1000 a
给有序集合sortedset中a成员的数据加1000
zrange
zrange sortedset 0 100
取出索引0到100的成员zrange sortedset 0 100 withscores
取出索引0到100的成员,并将成员的值也取出来