>flushdb 清空当前库的数据
>flushall 清空所有redis库的数据
>select【db号】 选择第几号库
>dbsize 当前库有多少键
>keys *
>exist key
>move key db 移动key到指定的db
>expire key
>ttl key -1表示永不过期 -2表示已过期
>type key 查看key的类型
一、String类型
>set/get/del/append/strlen
>incr/decr/incrby/decrby 一定要是数字才能进行加减
>getrange/setrange setrange在设定的位置进行替换n个字符
>setnx(set with expire)键秒值/setnx(set if not exist)
>mset/mget/msetnx
>getset(先get后set)
二、list类型
>lpush/rpush/lrange 先进先出用rpush,先进后出用lpush lrange从0开始取值
>lpop/rpop 出栈
>lindex 按照索引下标获得元素(从上到下)
>llen 获取长度
>lrem key 删N个value eg:k1 1 1 1 2 2 2 3 3 3 >lrem k1 2 3 >1 1 1 2 2 2 3
>ltrim key 开始index结束index,截取指定范围的值后再赋值给key
>rpoplpush source destination源列表出栈目的列表入栈
>lset 设置在指定key相应索引下的值
>linsert key before/after 值 插入的值 在key的前/后指定的值上插入想要插入的值
性能总结:它是一个字符串链表,left、right都可以插入添加
如果键不存在,创建新的链表
如果键已已存在,新增内容
如果键全移除,对应的键也就消失了
链表的操作无论是头还是尾效率都极高,但是假如是对中间元素进行操作,效率就很惨淡了
三、set
>sadd/smembers/sismember sismember 是否包含某个值
>scard 获取集合里面的元素个数
>srem key value 删除集合中的元素
>srandmember key 某个整数(随机出几个数)
>spop key随机出栈
>smove key1 key2 在key1里面的某个值赋给key2
>sdiff/sinter/sunion 差集/交集/并集
四、hash(key (k->v))
>hset/hget/hmset/hmget/hgetall/hdel
>hlen k数量
>hexists key
>hkeys/hvals
>hincrby/hincrbyfloat
>hsetnx
五、在set基础上,加一个score值 (set是k1 v1 v2 v3)(zset是k1 score1 v1 score2 v2)
>zadd/zrange [withscore]
>zrangebyscore key 开始score 结束score
>zrem key 某score下对应的value值,作用是删除元素
>zcard/zcount key score区间/zrank key values值,作用是获得下标值/zscore key 对应值,获得分数
>zrevrank key values值,作用是逆序获得下标值
>zrevrange 逆序获取指定索引的值
>zrevrangebyscore key 结束score 开始score,注意值的书写,
原文:https://www.cnblogs.com/ffzzcommsoft/p/14868106.html