https://blog.csdn.net/qq_21583681/article/details/78463000
一些Redis命令
-
KEYS pattern
列举中符合pattern的所有keys。
pattern(glob风格通配符):
? 匹配一个字符; * 匹配n(包括0)个任意字符
[] 表示范围,比如[c-f],表示字符 c,d,e,f
\x 匹配字符x,比如? 匹配字符?
eg: KEYS user* 列举以“user”开头的所有keys。 -
SET bar 1
为key设置值 -
EXISTS bar
判断一个key是否已存在 -
DEL key [key…]
可以删除一个或者多个key,返回删除key的个数;不支持通配符。
如果想批量删除:
redis-cli KEYS “user*” | xargs redis-cli DEL 或者
redis-cli DELredis-cli KEYS "user*"
(这个性能更好) -
TYPE key
获得键值的数据类型,返回值可能是string(字符串类型)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型)。 -
INCR INCRBY DECR DECRBY INCRBYFLOAT
-
APPEND key value
-
STRLEN key
返回键值的长度 -
GET SET MGET MSET
-
GETBIT SETBIT 位操作
-
hash散列数据类型
实现方式 hash表
HSET key field value
HGET key field
HMSET key field value [field value…]
HMGET key field [field…]
HGETALL key
HEXISTS key field 判断某个字段是否存在
HSETNX key field value 当field不存在时,设置值
HINCRBY key field increment
HDEL key field [field…] 删除字段
HKEYS key 获取字段名
HVALS key 获取字段值
HLEN key 获取字段数量 -
list列表类型
列表类型是通过链表实现的,所以获取靠近两端的数据时,速度即可。获取中间数据时,相对速度变慢,尤其是链表很长时。这种数据类型适合“新鲜事”或者“日志”这种很少访问中间元素的应用。
LPUSH key value [value…]
RPUSH key value [value…]
LPOP key
RPOP key
LLEN key 获取列表长度
LRANGE key start stop 获得列表片段
LREM key count value 删除列表中指定的值
当count > 0时, 从左边开始,删除count个值是value
当count < 0时,从右边开始,删除-count个值是value
当count= 0时,删除列表中所有的值是value的值
LINDEX key index 获取指定索引的元素值
LSET key index value 设置指定索引的元素值
LTRIM key start end 只保留列表指定片段 -
SET集合类型
SET是用 值为空 的hash 实现的,所以其新增,删除,判断是否成员等操作的时间复杂度为O(1)。
SADD key member [member …] 向集合中添加元素
SREM key member [member …] 从集合中删除元素
SMEMBERS key 获得集合中的所有元素
SISMEMBER key member 判断是否是成员
SDIFF key [key…] 差集运算 A-B={x|x ∈ A 且 x ∉ B}
SINTER key [key …] 交集运算
SUNION key [key …] 并集运算 -
sorted set 有序集合类型
有序集合类型是通过散列表和跳跃表(Skip List)实现的,所以即使读取位于中间部分的数据速度也很快O(logN)。
list不能简单的调整某个元素的位置,但是有序集合可以(通过更改这个元素的分数)
ZADD key score member [score member …] score可以是整数或者双精度浮点数
ZSCORE key member 或者元素分数
ZRANGE key start stop [WITHSCORES] 按照元素分数从小到大的顺序返回索引从start到stop之间的所有元素(包括start,stop位置上的元素)
ZREVRANGE key start stop [WITHSCORES]
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
该命令按照元素分数从小到大的顺序返回分数min和max之间(包含min,max)的元素
ZINCRBY key increment member 增加一个元素的分数
Redis命令参考:http://redisdoc.com/index.html