Redis使用
五个基本数据结构:String、List、Hash、Set、Zset
- String:SET/GET/DEL
set key value
get key
del key
- List:链表,LPUSH/RPUSH、LPOP/RPOP、LLEN、LRANGE
lpush list-key item
- Set:集合,SADD、SREM、SMEMBERS(返回所有)、SISMEMBER(是否存在)
sadd set-key item
- Hash:散列表,HSET、HGET、HGETALL、HDEL、HLEN
hset hash-key subkey value
- Zset:有序集合(根据score浮点数排序),ZADD、ZREM、ZRANGE、ZRANGEBYSCORE
zadd zset-key score item
其他命令
String
- INCR/DECR、INCRBY/DECRBY、INCRBYFLOAT
- 将储存值增加或减少,如果不能解释为十进制整数或浮点数则报错。不存在的键或空串则当作是0来处理。
incr key
incrby key amount
- APPEND、GETRANGE\SETRANGE、GETBIT\SETBIT
- 一些列对字符串的操作,用的时候再看文档
List
- LTRIM
ltrim list-key start end
- 对列表进行修剪,保留start到end的元素
- BLPOP\BRPOP、RPOPLPUSH\BRPOPLPUSH
- B就是阻塞的意思
blpop list-key [list-key ...] timeout
弹出一个元素,空则等待timeoutrpoplpush source-list dest-list
弹出源list最右端元素推入目的list最左端
Set
- SDIFF、SINTER、SUNION
- SDIFFSTORE、SINTERSTORE、SUNIONSTORE
- 差集(存在于第一个不存在其他)、交集(存在于所有)、并集(并所有)
sdiff set-name [set-name...]
sdiffstore dest-key set-name [set-name...]
这里的store是覆盖
Hash
- HEXISTIS、HKEYS、HVALS、HGETALL、HINCRBY\HINCRBYFLOAT
- Hashmap那一套方法
Zset
- ZCARD(数量)、ZRANK、ZCOUNT、ZSOCRE
zrank zset-name item
返回在集合中的排名zscore zset-name item
返回在集合中的分值zcount zset-name min max
返回分值介于min和max间的成员数量
- 还要一套用于按score和交并差操作集合的命令