Redis命令参考:http://redisdoc.com/index.html
redis默认有16个数据库,编号为0~15,默认是0,使用select可以选择进入几号数据库
KEYS:keys [pattern] 查找所有符合给定模式 pattern 的 key,一般不在生产环境中使用
RANDOMKEY:随机返回key
TYPE:查看key的类型
DEL:删除key
RENAME
RENAMENX
RESTORE
DUMP
MIGRATE
MOVE key db:将当前数据库的 key 移动到给定的数据库 db 当中。
OBJECT
PEXPIRE
PEXPIREAT
PTTL
SORT
EXPIRE key sec:给key设置过期时间为sec秒
TTL key:查看key剩余的过期时间,返回-1代表永远不过期
PERSIST:去掉key的过期时间
EXPIREAT:毫秒
SCAN
SET key value [NX|XX] # 设置/添加,不管key是否存在,都设置
SETEX # key存在,才设置
SETNX # key不存在,才设置
GET # 获取key对应的value
MSETNX
GETSET # set key newvalue并返回旧的value
APPEND key value # 将value追加到旧的value
STRLEN key # 计算字符串的长度(注意中文)
PSETEX
SETRANGE key index value # 设置指定下标所有对应的值
GETRANGE key start end # 获取字符串指定下标所有的值
HSET key field value # 设置hash key对应的value
HSETNX
HGET key field # 获取hash key对应的filed的value
HDEL key field # 删除hash key对应的field的value
HMGET key filed1 filed2 … filedN # 批量获取
HMSET key filed1 value1 filed2 value2 … filedN valueN
HKEYS key # 返回hash key对应所有field
HGETALL key # 获取key对应的所有field的value(小心使用,牢记单线程)
HVALS key # 返回hash key对应所有field的value
HEXISTS key field # 判断hash key是否有filed
HLEN key # 获取hash key filed的数量
HINCRBY
HINCRBYFLOAT
HKEYS
HVALS
HSCAN
HSTRLEN
两端添加;查看列表;两端弹出;获取列表元素个数;扩展命令
LINSERT key BEFORE|AFTER pivot value:将值 value 插入到列表 key 当中,位于值 pivot 之前或之后
LLEN key
LPOP、RPOP:弹出表头
LPUSH、RPUSH:插入到表头、表尾
LPUSHX、RPUSHX
LINDEX:返回列表 key 中,下标为 index 的元素
LRANGE key start end(包含end):获取列表key中指定索引范围所有item
LSET key index value:将列表 key 下标为 index 的元素的值设置为 value
LTRIM key start end:保留[start,end]内的元素,其他的全部删除
注解:B代表阻塞block的含义
BLPOP key timeout:LPOP阻塞版本,timeout是阻塞超时时间,timeout=0为永远不阻塞
BRPOP
BRPOPLPUSH、RPOPLPUSH
栈:LPUSH+LPOP
队列:LPUSH+RPOP
消息队列:LPUSH+BRPOP
SDIFF:差集 、 SDIFFSTORE:差集存放在集合上
SINTER:交集 、 SINTERSTORE
SUNIOn:并集 、 SUNIOnSTORE
SCARD:查看集合中元素个数
SISMEMBER:判断元素是否存在在集合中
SMEMBERS
SRANDMEMBER:随机从集合中选出count个元素
SMOVE
SPOP # 随机从集合中弹出一个元素
SSCAN
存储的值:带分数的score-value有序集合,其中score为浮点(可以重复),value为元素(不能重复)
使用场景:在线游戏积分排行榜、构建索引数据
ZADD key score member
ZREM
ZSCORE key element:返回元素的分数
ZCARD key:返回元素的总个数
ZCOUNT key min max:返回有序集 key 中, score 值在 min 和 max 之间的成员的数量
ZINCRBY key increment member:为有序集 key 的成员 member 的 score 值加上增量 increment
ZRANGE:返回有序集 key 中,指定区间内的成员
ZRANGEBYSCORE:返回有序集 key 中,所有 score 值介于 min 和 max 之间的成员
ZRANK:返回有序集 key 中成员 member 的排名
ZREMRANGEBYRANK:移除有序集 key 中,指定排名(rank)区间内的所有成员
ZREMRANGEBYSCORE:移除有序集 key 中,所有 score 值介于 min 和 max 之间
ZREVRANGE:返回有序集 key 中,指定区间内的成员
ZREVRANGEBYSCORE:返回有序集 key 中, score 值介于 max 和 min 之间的所有的成员
ZREVRANK:返回有序集 key 中成员 member 的排名