Redis自学笔记 --Hash、List、Set类型简述
2014-03-14 22:43
429 查看
Hash类型
设置hash field为指定值,如果key不存在,则先创建。
获取指定的hash field。
获取全部指定的hash filed。
同时设置hash的多个field。
将指定的hash filed 加上给定值。
测试指定field是否存在。
删除指定的hash field。
返回指定hash的field数量。
返回hash的所有field。
返回hash的所有value。
返回hash的所有filed和value。
List类型
在key对应list的头部添加字符串元素,返回1表示成功,0表示key存在且不是list类型。
在尾部添加。
返回key对应list的长度,key不存在返回0,如果key对应类型不是list返回错误。
返回指定区间内的元素,下标从0开始,负值表示从后面计算,-1表示倒数第一个元素 ,key不存在返回空列表。
截取list,保留指定区间内元素,成功返回1,key不存在返回错误。
设置list中指定下标的元素值,成功返回1,key或者下标不存在返回错误。
从key对应list中删除count个和value相同的元素。count为0时候删除全部。
从list的头部删除元素,并返回删除元素。如果key对应list不存在或者是空返回nil,如果key对应值不是list返回错误。
从尾部删除。
从左到右扫描返回对第一个非空list进行lpop操作并返回,比如blpop list1 list2 list3,如果list不存在list2,list3都是非空则对list2做lpop并返回从list2中删除的元素。如果所有的list都是空或不存在,则会阻塞timeout秒,timeout为0表示一直阻塞。如果超时发生,则返回nil。
从srckey对应list的尾部移除元素并添加到destkey对应list的头部,最后返回被移除的元素值,整个操作是原子的.如果srckey是空或者不存在返回nil。
Set类型
添加一个string元素到,key对应的set集合中,成功返回1,如果元素以及在集合中返回0,key对应的set不存在返回错误。
从key对应set中移除给定元素,成功返回1,如果member在集合中不存在或者key不存在返回0,如果key对应的不是set类型的值返回错误。
删除并返回key对应set中随机的一个元素,如果set是空或者key不存在返回nil。
同spop,随机取set中的一个元素,但是不删除元素smove srckey dstkey member 从srckey对应set中移除member并添加到dstkey对应set中,整个操作是原子的。成功返回1,如果member在srckey中不存在返回0,如果key不是set类型返回错误。
返回set的元素个数,如果set是空或者key不存在返回0。
判断member是否在set中,存在返回1,0表示不存在或者key不存在。
返回所有给定key的交集。
返回所有给定key的并集。
同sunion,并同时保存并集到dstkey下。
返回所有给定key的差集。
同sdiff,并同时保存差集到dstkey下。
返回key对应set的所有元素,结果是无序的。
hset key field value
设置hash field为指定值,如果key不存在,则先创建。
hget key field
获取指定的hash field。
hmget key filed1....fieldN
获取全部指定的hash filed。
hmset key filed1 value1 ... filedN valueN
同时设置hash的多个field。
hincrby key field integer
将指定的hash filed 加上给定值。
hexists key field
测试指定field是否存在。
hdel key field
删除指定的hash field。
hlen key
返回指定hash的field数量。
hkeys key
返回hash的所有field。
hvals key
返回hash的所有value。
hgetall
返回hash的所有filed和value。
List类型
lpush key string
在key对应list的头部添加字符串元素,返回1表示成功,0表示key存在且不是list类型。
rpush key string
在尾部添加。
llen key
返回key对应list的长度,key不存在返回0,如果key对应类型不是list返回错误。
lrange key start end
返回指定区间内的元素,下标从0开始,负值表示从后面计算,-1表示倒数第一个元素 ,key不存在返回空列表。
ltrim key start end
截取list,保留指定区间内元素,成功返回1,key不存在返回错误。
lset key index value
设置list中指定下标的元素值,成功返回1,key或者下标不存在返回错误。
lrem key count value
从key对应list中删除count个和value相同的元素。count为0时候删除全部。
lpop key
从list的头部删除元素,并返回删除元素。如果key对应list不存在或者是空返回nil,如果key对应值不是list返回错误。
rpop
从尾部删除。
blpop key1...keyN timeout
从左到右扫描返回对第一个非空list进行lpop操作并返回,比如blpop list1 list2 list3,如果list不存在list2,list3都是非空则对list2做lpop并返回从list2中删除的元素。如果所有的list都是空或不存在,则会阻塞timeout秒,timeout为0表示一直阻塞。如果超时发生,则返回nil。
rpoplpush srckey destkey
从srckey对应list的尾部移除元素并添加到destkey对应list的头部,最后返回被移除的元素值,整个操作是原子的.如果srckey是空或者不存在返回nil。
Set类型
sadd key member
添加一个string元素到,key对应的set集合中,成功返回1,如果元素以及在集合中返回0,key对应的set不存在返回错误。
srem key member
从key对应set中移除给定元素,成功返回1,如果member在集合中不存在或者key不存在返回0,如果key对应的不是set类型的值返回错误。
spop key
删除并返回key对应set中随机的一个元素,如果set是空或者key不存在返回nil。
srandmember key
同spop,随机取set中的一个元素,但是不删除元素smove srckey dstkey member 从srckey对应set中移除member并添加到dstkey对应set中,整个操作是原子的。成功返回1,如果member在srckey中不存在返回0,如果key不是set类型返回错误。
scard key
返回set的元素个数,如果set是空或者key不存在返回0。
sismember key member
判断member是否在set中,存在返回1,0表示不存在或者key不存在。
sinter key1 key2...keyN
返回所有给定key的交集。
sunion key1 key2...keyN
返回所有给定key的并集。
sunionstore dstkey key1...keyN
同sunion,并同时保存并集到dstkey下。
sdiff key1 key2...keyN
返回所有给定key的差集。
sdiffstore dstkey key1...keyN
同sdiff,并同时保存差集到dstkey下。
smembers key
返回key对应set的所有元素,结果是无序的。
相关文章推荐
- Redis的介绍
- redis实践使用大总体
- Jedis连接池的使用
- redis的yum和编译安装的对比(简单明了,清晰可见)
- Redis学习实战笔记
- Python操作redis
- Redis源码学习——双端链表
- redis相关简介
- Redis特性分析
- mysql和redis之间互相备份
- redis
- redis数据记录过期源代码分析
- 构建基于redis+gearman+nodejs 的消息推送系统
- Linux 下 Redis 安装详解
- Ubuntu 安装 Redis
- Redis缓存
- Redis Pub发布/sub订阅实现机制
- Redis常用命令速查 <第二篇>
- Redis源码学习——简单动态字符串SDS(Simple Dynamic String)
- Ubuntu Linux下安装 Redis 并配置开机启动