第三章 入门

3.1

    1.获取符合规则的键名列表

    KEYS pattern


注意:KEYS命令需要遍历redis中所有的键,所以在生产环境中使用会影响性能,建议不使用

    2.判断一个键是否存在

    EXISTS key 如果存在就返回整数1,否则就返回0

    3.删除键

    DEL  key [key ....] 删除一个或多个键 返回删除的个数

    4.获得键值的数据类型

    TYPE key 返回值可能是 String(字符串类型),hash(散列类型),list(列表类型),set(集合类型),zeset(有序集合类型).


3.2 字符串类型

    3.2.1 介绍

        字符串类型是redis的基本数据类型,可以存储任何形式的字符串,包括二进制数据.一个字符串类型键允许存储的最大容量是512M.

    3.2.2 命令

        1.赋值与取值

            SET key value/GET key

        2.递增数字

            INCR key

            当存储的字符串是整数类型时,使用INCR命令就可以使这个值递增 并返回递增后的值.

    3.2.3 实践 我是写java的,不熟悉PHP,所以大家自己看吧

    3.2.4 命令拾遗

        1.增加指定的整数 INCRBY key increment

        2.减少指定的整数 

        DECR key 让值递减 一般减1

        DECRBY key value 按照指定的整数值递减

        3.增加指定的浮点数

        INCRBYFLOAT key increment 

        4.向尾部追加

        APPEND key value 

        5.获取字符串长度

        STRLEN key 返回键值的长度,如果没有返回0

        6.同时获得/设置多个键值 

        MGET key [key .....]

        MSET key value[ key value ......]

        7.位操作符

        GETBIT key offset

            GETBIT 命令可以获取一个字符串类型的键指定位置的二进制位的值,索引从0开始,如果超过二进制位的长度则返回0.

        SETBIT key offset value  

             SETBIT 命令可以设置一个字符串类型键指定位置的二进制的值,索引从0开始,返回的是这个位置的旧值.如果这是的长度超过了二进制的长度或者设置的不存在返回0.

        BITCOUNT key [start] [end]

            BITCOUNT 命令返回的是字符串键中值是1 的二进制个数.

            通过参数设置统计字节的范围  BITCOUNT  foo 0 1

        BITOP operation destkey key [key . . . . . .]

            BITOP 命令可以对多个字符串类型进行位运算,并将结果存储在destkey参数指定的键中.

            BITOP 支持的运算操作有 AND OR XOR NOT

3.3 散列类型

    3.3.1 介绍

    散列类型也是一种字典结构,其结构存储了字段和字段值的映射,但字段值只能是字符串,不支持其他数据类型.

    散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的属性,而字段值则存储属性值.



    3.3.2 命令

        1.赋值与取值

        HSET key field value

        HSET 命令的方便之处在于不区分插入和更新操作,当执行的是插入操作是时HSET返回1,更新操作返回0

        HGET key field

        HMSET key field value [field value] 

        同时设置多个值

        HMGET key field [field ......]

        同时获取多个值

        HGETALL key

        如果想获取键值中多有字段和字段值却不知道键中有哪些字段时使用HGETALL命令

        2.判断字段是否存在

        HEXISTS key field 如果存在就返回1,否则返回0,如果键不存在也返回0

        3.当字段不存在时赋值

        HSETNX key field value

        HSETNX 命令与HSET命令类似,区别在于如果字段已经存在,HSETNX命令将不执行任何操作

        4.增加数字

        HINCRBY key field increment

        HINCRBY 命令可以使字段值增加指定的 整数.散列类型没有HINCR命令,但是可以通过 HINCRBY key field 1 来实现.

        5.删除字段

        HDEL key field [field . .....]

        HDEL 命令可以删除一个或多个字段,返回值是被删除字段的个数.

    3.3.4

        1.只获取字段名或字段值

            HKEYS key

            HVALS key

        2.获得字段数量

        HLEN key

3.4 列表类型

    3.4.1 介绍

    列表类型(list)可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素,或者获得列表的某一个片段.

    3.4.2 命令

        1.向列表两端增加元素

        LPUSH key value [value] LPUSH命令用于向列表左边添加元素

        RPUSH key value [value] RPUSH命令用于向列表右边添加元素

        2.从列表两端弹出元素

        LPOP key

        LPOP命令分2步操作,第1步将列表左边 的元素从列表移除,第2步是返回被移除的元素值.

        RPOP key

        3.获取列表中元素的个数

        LLEN key 当键不存在时返回0

        4.获取列表片段

        LRANGE key start stop

        获得列表中某一个片段.LRANGE命令将返回索引从start到stop之间所有的元素(包含两端的元素).

        LRANGE也支持负索引,表示从右边第一个开始计算序数.如"-1"表示最右边第一个元素.

        如果start的索引位置比stop的索引位置靠后,则返回空列表,如果stop大于实际的索引范围,则会返回列表最右边的元素

        5.删除列表中指定的值

        LREM key count value

        LREM命令会删除列表中前count个值为value的元素,返回的是实际删除的元素个数,根据count值的不同,LREM命令执行方式会有差异:

        (1)当count>0时,LREM命令会从列表的左边开始删除前count个值为value的元素

        (2)当count<0时,LREM命令会从列表右边开始删除前|count|个值为value的元素

        (3)当count=0时LREM命令会删除所有值为value的元素

    3.4.4命令拾遗

        1.获得/设置指定索引的元素值

        LINDEX key index

        LINDEX 命令用来返回指定索引的元素,索引从0开始,如果index是负数则表示从右边开始计算的索引,最右边元素的索引是-1.

        LSET key index value

        LSET 命令将索引为index的元素赋值为value

        2.只保留列表指定的片段

        LTRIM key start stop

        LTRIM 命令可以删除指定索引范围之外的所有元素,其指定列表范围的方法和LRANGE命令相同

        3.向列表中插入元素

        LINSERT key BEFORE|AFTER pivot value

        LINSERT 命令首先会在列表中从左到右查找值为pivot的元素,然后根据第二个参数是BEFORE还是AFTER来决定将value插入到该元素的前面还是后面.

        4.将元素从一个列表转移到另个列表

        RPOPLPUSH source destination 

        先执行RPOP命令再执行LPUSH命令.RPOPLPUSH命令会先从source列表类型键的右边弹出一个元素然后将其插入到destination列表类型键的左边,并返回这个元素的值,整个过程是原子的.

3.5 集合类型

    3.5.1 介绍

        集合中的每个元素都是不同的,且没有顺序.多个集合类型键之间还可以进行并集.交集和差集的运算.

    3.5.2 命令

        1.增加/删除元素

        SADD key member [member.....]

        SADD 用于向集合中增加一个或多个元素,如果键不存在则会自动创建,因为在一个集合中不能有相同的元素,所以如果加入的元素已经存在则会忽略这个元素

        SREM key member [member......]

        SREM 命令用于从集合中删除一个或多个元素,并返回删除成功的个数.

        2.获得集合中的所有元素

        SMEMBERS key 返回集合中所有元素

        3.判断元素是否在集合中

        SISMEMBERS key member 当存在时返回1否则返回0

        4.集合运算

        SDIFF key [key......]

        SDIFF用来对多个结合进行差集运算 表示为A-B,代表所有属于A且不属于B的元素构成的集合.

        SINTER key [key......]

        SINTER命令用来对多个集合执行交集运算代表属于A且属于B的元素构成的集合 

        SUNION key [key......]

        SUNION命令用来对多个集合执行并集运算,表示所有属于A或属于B的元素构成的集合. 

    3.5.4 命令拾遗

        1.获得集合中元素个数

           SCARD key

           2.进行集合运算并将结果存储

            SDIFFSTORE destination key [key......]

            SINTERSTORE destination key [key......]

            SUNIONSTORE destination key [key......] 

        3.随机获得集合中的元素

        SRANDMEMBER key [count] 

        count参数来一次随机获得多个元素,根据count的正负不同,具体表现也不同.

        (1)当count为正数时,SRANDMEMBER 会随机从集合中获得count个不重复的元素,如果count的值大于集合中元素的个数,则SRANDMEMBER会返回集合中全部元素.

        (2)当count为负数时,SRANDMEMBER会随机从集合中获得|count|个元素这些元素有可能相同.

3.6 有序集合类型

    3.6.1介绍

        在集合类型的基础上有序集合类型为集合中每个元素都关联了一个分数,这使得我们不仅可以完成插入删除和判断元素是否存在等集合类型支持的操作,还能欧获得分数最高的前N个元素,获得指定分数范围内的元素等与分数有关的操作

    3.6.2 命令

        1.增加元素

        ZADD key store member [score member .....] 

        ZADDml用来向有序集合中加入一个元素和改元素的分数,如果该元素已存在则用新的分数替换原来的分数,ZADD命令返回值是新加入到结合中的元素个数

        2.获得元素的分数

        ZSCORE key member

        3.获得排名在某个范围的元素列表

        ZRANGE key start stop [WITHSCORES]

        ZRANGE    ml会按照元素分数从小到大的顺序返回索引从start到stop之间所有元素.索引从0开始

        ZREVRANGE key start stop [WITHSCORES] 

        4.获得指定分数范围的元素

        ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]

        5.增加某个元素的分数

        ZINCRBY key increment member

        3.6.4 命令拾遗

            1.获得集合中元素的数量

            ZCARD key

            2.获得指定范围内元素的个数

            ZCOUNT key min max

            3.删除一个或多个元素

            ZREM key member [member......]

            4.按照排名范围删除元素

            ZREMRANGEBYRANK key start stop

            5.按照分数范围删除元素

            ZREMRANGEBYSCORE key min max

            6.获得元素排名

            ZRANK key member

            按照元素的分数从小到大的顺序获得指定的元素排名

            ZREVRANK key member        与ZRANK相反 最大的元素排名为0    

            







        









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值