1、官方文档
Redis API 官方文档:http://redisdoc.com/
2、数据库相关 API
- select 数据库下标 :切换数据库
- Dbsize:查看当前数据库 key 的数量
- Flushdb:清空当前数据库
- FlushAll:清空所有数据库
注意:Redis 不区分大小写,并且支持自动补全(按 Tab 键)!
3、key 相关 API
- keys *:查看当前数据库所有 key
- exists key key的名字:判断某个 key 是否存在
- move key的名字 数据库下标:将当前数据库的某个 key 移动到指定的数据库
- expire key的名字 秒钟:为给定的 key 设置过期时间
- ttl key的名字:查看 key 还有多少秒过期,-1 表示永不过期,-2 表示已过期
- type key的名字:查看你的 key 是什么类型
4、String 常用 API
- set key的名字 key的值:添加键值对
- get key的名字:得到某个 key 的值
- del key的名字:删除某个 key,可以同时删除多个
- strlen key的名字:计算某个 key 的 value 的长度
- append key的名字 值:在 key 原来值的末尾进行追加
- Incr key的名字:给 key 的值自增 1
- Incrby key的名字 要相加的数字:给 key 的值加上指定的数字
- decr key的名字:给 key 的值自减 1
- decrby key的名字 要相减的数字:给 key 的值减去指定的数字
- getrange key的名字 开始下标 结束下标:获取指定区间范围内的值,0 -1 表示全部
- setrange key的名字 开始下标 要设置的值:设置指定区间的值
- setex key的名字 过期时间(单位是秒) key的值:设置带过期时间的 key,动态设置
- setnx key的名字 key的值:只有 key 不存在时设置 key 的值
- mset key的名字:同时设置多个键值对,可以是一个,也可以是多个
- mget key的名字:同时获取多个 key 的值,可以是一个,也可以是多个
- getset key的名字 key的值:先返回 key 的值,再设置 key 的值
5、List 常用 API
注意,List 的值是可以重复的!
-
lpush key的名字 key的值(可以是多个):将一个或多个值
value
插入到列表key
的表头 -
rpush key的名字 key的值(可以是多个):将一个或多个值
value
插入到列表key
的表尾(最右边)。 -
lrange key的名字 开始下标 结束下标:返回列表
key
中指定区间内的元素
- lpop key的名字:移除并返回列表
key
的头元素。 - rpop key的名字:移除并返回列表
key
的尾元素。
- lindex key的名字 下标:返回列表
key
中,下标为index
的元素。
- llen key的名字:计算列表的长度
- lrem key的名字 count value:移除列表中与参数
value
相等的元素(移除 count 个)。count 为 0 就表示删除所有!
- ltrim key的名字 开始下标 结束下标:让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
- rpoplpush list1 list2 :移除列表的最后一个元素,并将该元素添加到另一个列表并返回
- lset key的名字 index value:将列表
key
下标为index
的元素的值设置为value
。
- linsert key的名字 before/after 值:在列表某个已有值的前或后再添加具体值
6、Set 常用 API
注意 Set
里面的元素是不能重复的!
- sadd key member[member…]:将一个或多个
member
元素加入到集合key
当中,已经存在于集合的member
元素将被忽略。
- smembers key:返回集合
key
中的所有成员。
- sismember key member:判断
member
元素是否集合key
的成员。
- scard key:返回集合
key
的基数(集合中元素的数量)。
- srem key member [members…]:移除集合
key
中的一个或多个member
元素,不存在的member
元素会被忽略。
- srandmember key [count]:随机从
Set
中返回count
个值。- 如果
count
不写,默认为1
- 如果超过最大数量就全部取出。
- 如果写的值是负数,比如 -3 ,表示需要取出 3 个,但是可能会有重复值。
- 如果
- spop key:移除并返回集合中的一个随机元素。
- smove source destination member:将
member
元素从source
集合移动到destination
集合。
- sdiff key [key…]:返回一个集合的全部成员,该集合是所有给定集合之间的差集。不存在的
key
被视为空集。
- sinter key [key …]:返回一个集合的全部成员,该集合是所有给定集合的交集。
- sunion key [key …]:返回一个集合的全部成员,该集合是所有给定集合的并集。
- 注意:不存在的
key
被视为空集。
7、Hash 常用 API
-
hset hash filed value:将哈希表
hash
中域field
的值设置为value
。 -
hget hash field:返回哈希表中给定域的值。
-
hmset key field value [field value …]:同时将多个
field-value
(域-值)对设置到哈希表key
中。 -
hmget key field [field …]:返回哈希表
key
中,一个或多个给定域的值。 -
hgetall key:返回哈希表
key
中,所有的域和值。 -
hlen key:返回哈希表
key
中域的数量。 -
hexists hash field:检查给定域
field
是否存在于哈希表hash
当中。 -
hkeys key:返回哈希表
key
中的所有域。 -
hvals key:返回哈希表
key
中所有域的值。
- hincrby key field increment:为哈希表
key
中的域field
的值加上增量increment
。 - hincrbyfloat key field increment:为哈希表
key
中的域field
加上浮点数增量increment
。
- hsetnx hash field value:当且仅当域
field
尚未存在于哈希表的情况下, 将它的值设置为value
。
7、Zset 常用 API
- zadd key score member [[score member] [score member] …]:将一个或多个
member
元素及其score
值加入到有序集key
当中。 - zrange key start stop [WITHSCORES]:返回有序集
key
中,指定区间内的成员。其中成员的位置按score
值递增(从小到大)来排序。
- zrevrange key start stop [WITHSCORES]:返回有序集
key
中,指定区间内的成员。 - zrem key member [member …]:移除有序集
key
中的一个或多个成员,不存在的成员将被忽略。 - zcard key:返回有序集
key
的基数。 - zcount key min max:返回有序集
key
中,score
值在min
和max
之间(默认包括score
值等于min
或max
)的成员的数量。 - zrevrank key member:返回有序集
key
中成员member
的排名。其中有序集成员按score
值递减(从大到小)排序。 - zrevrange key start stop [WITHSCORES]:返回有序集
key
中,指定区间内的成员。 - zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count]:返回有序集
key
中,score
值介于max
和min
之间(默认包括等于max
或min
)的所有的成员。有序集成员按score
值递减(从大到小)的次序排列。
和max
之间(默认包括score
值等于min
或max
)的成员的数量。 - zrevrank key member:返回有序集
key
中成员member
的排名。其中有序集成员按score
值递减(从大到小)排序。 - zrevrange key start stop [WITHSCORES]:返回有序集
key
中,指定区间内的成员。 - zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count]:返回有序集
key
中,score
值介于max
和min
之间(默认包括等于max
或min
)的所有的成员。有序集成员按score
值递减(从大到小)的次序排列。