Redis命令
KEY
- DEL:
DEL [key]
:删除key
DEL key1 key2 key3.....
:删除多个
flush db
:删除数据库所有key - KEYS:
KEYS pattern
:查找符合给定模式的key
KEYS *
: 命中所有key
KEYS h*llo
:命中hllo、heello、 hello等 RANDOMDKEY
:从当前数据库中随机返回一个key
若无key值则返回nilTLL key
:返回给定key值的剩余时间(s)
expire name 30
:设置name的TLL为30s
若key不带TLL值则返回值为-1PERSIST key
移除给定key的生存时间EXISTS
:检查key是否存在,存在:1, 不存在:-1MOVE key db
:将当前数据库的值移动到给定数据库,若新的数据库已有对应key则MOVE命令无效RENAME key newkey
:当且仅当newkey不存在时重命名TYPE key
: 返回key所储存的值的类型OBJECT subcommand [arguments[arguments]]
允许从内部查看给定key的redis对象
A.OBJECT REFCOUNT <key\>
:返回给定key 引用所存储的值的次数
B.OBJECT ENCODING <key\>
:返回给定key所存储值使用的内部表示
C.OBJECT IDLETIME <key\>:
返回给定key存储以来的空转时间SORT key[BY pattern][LIMIT offset count][GET parttern][ASC|DESC|ALPHA][STORE desitnation]
:返回或保存给定列表、集合、有序集合key中经过排序的元素
SORT rank LIMIT 0 5
:返回排名前五的元素
String
SET key Value
:对非字符串数据赋值会覆盖
SETNX key value
:当且仅当key不存在时设值
SETEX key(second) value
将key生存时间设置为seconds秒SETRANGE key offset value
:用value来覆写key的值,从offset开始MSET key value [key,value]
同时设置多个值
MSETNX key value [key, value]
不会覆写已存在的key值,且具有原子性APPEND key value
若key已存在且为字符串,将value追加到key之后GET key
获取key所关联的字符串
MGET key (key2, key3)
GETRANGE key start end
返回key的目标子字符串GETSET key value
即将给定key的值设置为value,并返回key的旧值STRLEN key
返回key字符串的长度DECR key
将key存储数值减一,若key不存在,以0为初值减一
DECR BY key decrment
减去减量(decrement)
INCR key
将key存储数值加一
INCR key increment
加上加量(increment)SETBIT key offset value
:对key存储的字符串设置或清除偏移量的位
GETBIT key offset
:获取指定位置的位(bit)
HASH
HSET key field value
将hash表中的域field的值设置为value
HSETNX key field value
当且仅当field值不存在时设值
HMSET key field value [field2 value2...]
:可同时设置多值HGET key field
HMGET key field [field2...]
同时获取多个值
HGETALL key
返回hash表中所有的key和value
HDEL key field[field2...]
删除hash表中的一个域或多个域
HLEN key
返回hash表中的域的数量HEXISTS key field
查看表中给定的域是否存在
HINCRBY key field increment
为域field 加上增量incrementHKEYS key
查看表中key的所有域HVALUE key
返回表中所有的值
LIST
LPUSH key value [value2...]
将值value 传入列表key 的表头中
LPUSHX key value
当且仅当key 存在且为列表RPUSH key value [value]
插入到表尾
PUSHX key value
为已存在的list插入值,若list不存在,操作无效LPOP key
移除并返回列表key的头元素
RPOP key
移除并返回列表key的尾元素
BLPOP key [key2...] time out
阻塞式弹出原语
给定多个key时检查各个列表弹出第一个非空列 头元素(BRPOP为尾元素)LLEN key
返回列表key 的长度LRANGE key start stop
返回列表中指定区间的元素LREM key count value
根据count值移除表中与参数value相等的元素,
count>0 -------从头到尾检索
count<0 -------从尾到头检索
count=0 -------全部LSET key index value
将列表key下标为index的元素值设置为valueLTRIM key start stop
让列表只保留区间内的元素LINDEX key index
返回表中下表为index的元素LINSERT key BEFORE|AFTER pivot value
在pivot值之前|后插入valueRPOPLPUSH source destination
- 将列表source的最后一个元素弹出,返回给客户端
- 将该列表插入列表destination列表的头元素
- BRPOPLPUSH 前一个命令的阻塞版本
SET
- 常用集合运算
A:inter(x,y) 交集
B:union(x,y)并集
C:diff(x,y)差集(x-y)
D:card(x)元素数量 SADD key member
将member加入集合setSREM key member
移除集合中的member元素SMEMBER key
返回key所有成员SISMEMBER key member
判断member是否时key成员SCARD key
返回key 元素的数量SMOVE source destination member
移动元素到目标位置SPOP key
移除并返回集合中的一个随机元素SRANDMEMBER key
随机返回一个元素SINTER key [key2...]
返回交集中的成员SINTERSTORE destination key[key2...]
交集保存到destination中SUNION key[key2...]
返回集合的并集SUNIONSTORE destination key [key...]
并集保存到destination中SDIFF key [key2...]
返回给定集合的差集SDIFFSTORE desitiantion key [key2...]
结果保存到destination中
SortedSET(ZSET)
ZADD key score member
将member元素及score值加入有序集key中ZREM key member
移除key中成员memberZCARD key
返回有序集基数ZCOUNT key min max
返回有序集中score在min和max之间的元素个数ZSCORE key member
返回member的score值ZINCRBY key increment member
为member的score值加上增量incrementZRANGE key start stop [WITHSCORES]
返回有序集中指定区间成员(递增)- ZREVRANGE key start stop [WITHSCORES] 返回有续集中指定区间成员(递减)
ZRANGEBYSCROE key min max [WITHSCORES][LIMT offset count]
返回有序集中score值介于min和max之间的成员(递增)ZREVRANGEBYSCORE key max min [WITHSCORES][LIMT offset count]
返回有序集中score介于max和min之间成员(递减)ZREMRANGEBYRANK key start stop
移除有序集key中指定排名区间内的所有内容
ZREMRANGEBYSCORE key min max
移除有序集中score 在min和max之间的成员ZRANK|ZREVRANK key member
返回有序集中member的排名(递增|递减)ZINTERSTORE destination numbers key [key2... ][WEIGHT weight]
计算有序集的交集ZUNIONSTORE destination numkey key [key2..][WEIGHT weight]
计算有序集的并集