Redis 笔记
key
EXISTS
判断一个key是否存在.expire
对key设置生存时间,同时也可以刷新key的生存时间expireat
使用Unix时间戳设置key的生存时间persist
移除key的生存时间、将存在的key设置永不过期ttl
查看key的生存时间、pttl
以毫秒为单位返回key剩余时间migrate
在两个redis实例中执行原子性的迁移:使用dump
序列化、在使用restore
反序列化move
将key移动到其他db(库)中type
返回key值存储的类型
String
getset
将给定的key的值设置为新值,并返回key的旧值mset
批量设置多个键值对.如果某个给定 key 已经存在,那么 MSET 会用新值覆盖原来的旧值 mset name "happyhack" sex "boy" like "girl"
msetnx
批量设置多个键值对,如果有key已存在,则所有批量都会失效(原子性操作)
...
Hash
hexists
查看哈希表key中是否存在某个字段 hexists phone myphone
hgetall
返回哈希表key中所有域和值hkeys
返回哈希表key中所有的域(所有字段)hvals
返回哈希表所有域的值hlen
返回哈希表域数量(字段数)
List
lindex
返回列表 key 中,下标为 index 的元素。
linsert
将值 value 插入到列表 key 当中,位于值 pivot 之前或之后。当 pivot 不存在于列表 key 时,不执行任何操作。 linsert key before|after pivot value
llen
返回列表key的长度lpop
移除并返回列表 key 的头元素。lpush
将一个或多个值插入到列表key的表头(最左边)
如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表头: 比如说,对空列表 mylist 执行命令 LPUSH mylist a b c ,列表的值将是 c b a ,这等同于原子性地执行 LPUSH mylist a 、 LPUSH mylist b 和 LPUSH mylist c 三个命令。
rpush
将一个或多个value 插入到列表key的表尾(最右边)
lrange
返回列表中指定区间的元素 lrange home 0 -1
lrem
根据参数 count 的值,移除列表中与参数 value 相等的元素lset
将列表 key 下标为 index 的元素的值设置为 valueltrim
对列表修剪
Set
set 集合中的元素是唯一的。不重复
sadd
将一个或多个member值加入key中,如果已存在member则忽略scard
返回set中的元素数量sdiff
返回集合的差集、只有一个集合时默认与空集做差集sinter
返回集合的交集sunion
返回一个集合的全部成员,该集合是所有给定集合的并集。sismember
判断 member 元素是否集合key的成员 smembers
返回集合 key 中的所有成员。srem
移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略。