Redis基本常用命令

1.Redis库

        select * :切换数据库,redis有16个库(0-15),默认使用0号库

                如:select 1:切换到1号库

        dbsize :查看当前数据库的key的数量

        flushdb :清空当前库(谨慎使用)

        flushall :清空全部库(谨慎使用)

2.键(key)

        keys * :查看当前库所有key

        exists key :判断某个key是否存在

        type key :查看你的key是什么类型

        del key :删除指定的key数据

        unlink key :首先表面删除指定的key数据,在key空闲时真正删除数据

        expire key  <时间> :给key设置过期时间

                如:expire key 5:5秒后过期

        ttl key :查看key还有多少秒过期,-1表示永远不过期,-2表示已经过期

3.字符串

        set <key> <value> :添加键值对

        get <key> :查询对应键值

        append <key> <value> :将value追加到原来value的末尾

        strlen <key> :获得值的长度

        setnx <key> <value> :在指定的 key 不存在时,为 key 设置指定的值。且此key的value

                                                无 法被覆盖。若key存在则不会执行成功。

        incr <key> :将 key 中储存的数字值增一。 如果 key 不存在,初始值为1。如果值包含错误

                        的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

        decr <key> :将 key 中储存的数字值减一。 如果 key 不存在,初始值为-1。如果值包含错误

                        的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

        incrby/decrby <key> <步长>:将 key 中储存的数字值 增/减 步长的值。

        mset <key1> <value1> <key2> <value2> ...:同时设置 1-多对值

        mget <key1> <key2> ...:同时获取 1-多 个value

        msetnx <key1> <value1> <key2> <value2> ...:在 key 不存在时,同时为所有 key 设置指

                        定的值。且key的value 无 法被覆盖。其中若有1个key存在,则不会执行成功。

                        此操作为原子性,有一个失败即全部失败

        getrange <key>  <起始位置> <结束位置>:获取值的范围,相当于String的subString,

                        但此处为前闭后闭。

        setrange <key> <起始位置>  <value> :从起始位置开始(索引0)用value覆盖原value

                        的值。

        setex <key> <过期时间> <value> :设置键值的同时,设置它们的过期时间(单位秒)。

        getset <key> <value> :设置新值,返回旧值。

4.List

        lpush/rpush <key> <value1><value2><value3> ... :从左边/右边插入一个或多个值。

        lpop/rpop <key> :从左边/右边弹出一个值(弹出=返回+删除)。

        rpoplpush <key1> <key2> :从<key1>列表右边弹出一个值,插入到<key2>列表左边。

        lrange <key> <start> <stop> :按照索引下标获得元素(从左到右)

                                                特殊:lrange <key> 0 -1 :获取所有

        lindex <key> <index> :按照索引下标获得元素(从0开始,从左到右)

        llen <key> :获得列表长度

        linsert <key> before <value> <newValue> :在<value> 的后面插入<newValue>的值

        lrem <key> <n> <value> :从左边删除n个值=value的(从左到右)

        lset <key> <index> <value> :将列表key下标为index的值替换成value

5.Set

        sadd <key> <value1> <value2> ... :将一个或多个member元素加入到集合key中,无

                        重复元素

        sismember <key> <value> :判断集合<key>是否为含有该<value>值,有返回1,无返回0。

        scard <key> : 返回该集合的元素个数

        srem <key> <value1> <value2> ...  : 删除集合中的某个元素

        spop <key> : 随机从该集合中弹出一个值

        srandomember <key> <n> : 随机从该集合中取出n个值。不会从集合中删除

        smove <source> <destination> <value> :把集合中一个值从一个集合移动到另一个集合

        sinter <key> <value> :返回两个集合的交集元素

        sunion <key> <value>:返回两个集合的并集元素

        sdiff <key> <value> :返回两个集合的差集元素(key1中不包含key2的元素)

6.Hash

        hset <key> <field1> <value1> <field2> <value2> :给<key>集合中 <field>键赋值<value>

                如:hest user id 1 name zhangsan age 11

        hget <key1> <field> :获取key1的field的值

        hexists <key> <field> :查看哈希表key中,给定field是否存在

        hkeys <key> :列出该hash集合的所有field

        hvals <value> :列出该hash集合的所有value

        hincrby <key> <field> <increment> :为哈希表key中的field的值加1

        hsetnx <key> <field> <value> 当key中不存在field时,添加field并赋值value

7.Zset

        zadd <key> <score1> <value1> <score2> <value2>... :将一个或多个member元素及

                        其score值加入到有序集key当中。

        zrange <key> <start> <stop> [withscores] :返回有序集key中,下标在<start> <stop>之间

                        的元素

        zrangebyscore <key> <min> <max> [withscores] [limit offset count] :返回有序集key中,所

                        有score值介于min和max之间(包括等于min 或 max)的成员。有序集成员按score

                        值递增(从小到大)次序排列。

        zrevrangebyscore key <max> <min> [withscores] [limit offset count] :返回有序集key中,

                        所有score值介于min和max之间(包括等于min 或 max)的成员。有序集成员按score

                        值递增(从大到小)次序排列。

        zincrby <key> <increment> <value> : 为元素的score加上增量。

        zrem <key> <value> :删除该集合下,指定值的元素。

        zcount <key> <min> <max> :统计该集合,分数区间内的元素个数

        zrank <key> <value> :返回该值在集合中的排名,从0开始。

8.Bitmaps

        setbit <key> <offset> <value> :设置Bitmaps中某个偏移量的值(0或1)

                              如: setbit k1 1 1, setbit k1 6 1

                              

        getbit <key> :获取Bitmaps中某个偏移量的值。

                                如:getbit k1 1, 返回 1

        bitcount <key> <start> <end> :统计下标 从start 到 end (单位:字节)中bit = 1的个数。

                                1字节 = 8 bit,Bitmaps中一个value占1bit。

        bitop and/or/not/xor <destkey> <key1> <key2>... :做多个Bitmaps 的交、并、非、异或,

                                并将结果保存在destkey中。

9.HyperLogLog

        pfadd <key> <element1> <element2> <...> :为 key 添加元素。

        pfcount <key1> <key2> <...> :计算基数 (不重复元素的个数)。

        pfmerge <destkey> <sourcekey> [sourcekey...] :将一个或多个HLL合并后的结果存储在另

                        一个HLL中。

10.geospatial

        geoadd <key> <longitude> <latitude> <member> [<longitude> <latitude> <member>...] :

                        添加地理位置(经度、纬度、名称)。

                        如 :geoadd k1 121.47 31.23 shanghai

                        经度:-180 - 180度 ,纬度 :-85.05112878 - 85.05112878度

        geopos <key> <member> [member...] :获得指定地区的坐标值。

        geodist <key> <member1> <member2> [m/km/ft/mi] 获得两个位置之间的直线距离,

                        单位:[m/km/ft/mi] : 米(默认)/千米/英里/英尺。

        georadius <key> <longitude> <latitude> radius m/km/ft/mi :以给定的经纬度为中心,找出

                        某一半径为圆的范围内元素。参数含义:键名称,经度,纬度,距离,单位。

11.发布和订阅

        subscribe <channel1> ...:订阅频道

        publish <channel> <message> :为订阅了channel的客户端发送message

        

        

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值