• Redis笔记---set


    1.redis set的介绍

       集合中的数据是不重复且没有顺序,集合类型和列表类型的对比。

       集合类型:存储的是的是最多2的32次方减一个字符串,数据是没有顺序的,但是数据是唯一的

      列表类型:最多存储内容最多2的32次方减一个字符串,数据是有序的,它的数据不是唯一的。

      集合类型的常用操作是向集合中假如或者删除元素。判断某个元素是否存在等,由于集合类型的Redis内部是使用值为空的散转表实现,所有这些操作的时间复杂度都为o(1);

      redis还提供了多个集合之间的交集、并集、差集的运算

    2.命令:

    (1)增加、删除元素

     语法:SADD key member [member ……]

    127.0.0.1:6379> sadd set a b c
    (integer) 3
    127.0.0.1:6379> sadd set a
    (integer) 0

     语法:SREM key member [member……]

    127.0.0.1:6379> srem set c d
    (integer) 1

    (2)获得集合中的所有元素

    语法:SMEMBERS key

    smembers key
    1) "b"
    2) "a”

    (3)判断元素是否在集合中

    语法:sismember key member  存在值为1,不存在值为0

    127.0.0.1:6379> sismember set a
    (integer) 1
    127.0.0.1:6379> sismember set h
    (integer) 0

    (4)运算命令

       集合的差集运算A-B,属于A但是不属于B

       语法:sdiff key [key……]

    127.0.0.1:6379> sadd setA 1 2 3
    (integer) 3
    127.0.0.1:6379> sadd setB 2 3 4
    (integer) 3
    127.0.0.1:6379> sdiff setA setB 
    1) "1"
    127.0.0.1:6379> sdiff setB setA 
    1) "4"

    集合交集运算,属于A且属于B元素构成的集合

    语法:sinter key key ……

    127.0.0.1:6379> sinter setA setB 
    1) "2"
    2) "3"

    集合的并集运算,A和B一起组成的数据

    sunion key key ……

    127.0.0.1:6379> sunion setA setB
    1) "1"
    2) "2"
    3) "3"
    4) "4"

    获取集合的元素个数

    语法:scard key

    127.0.0.1:6379> scard setA 
    (integer) 3

    从集合中弹出一个元素,由于集合是无序的,所有spop命令会从集合中随机选择一个元素弹出

    语法:spop key

    127.0.0.1:6379> spop setA 
    "1“

    127.0.0.1:6379> sadd set a b c

    (integer) 3

    127.0.0.1:6379> sadd set a

    (integer) 0

  • 相关阅读:
    ZINTERSTORE — Redis 命令参考
    Wombat vim colorscheme – customized Chronosbox
    我的vim colorscheme 白色之夜 博客园
    Python list of class attributes Python
    vim配色方案colorscheme设置
    colorscheme install
    Python类中的私有成员(私有函数,私有变量)
    Pebble Overview
    用python 发送邮件
    Python发送带附件的Email
  • 原文地址:https://www.cnblogs.com/kw28188151/p/8279650.html
Copyright © 2020-2023  润新知