• 6.Set集合类型操作使用


    Set集合类型

    (1)介绍

    redis的set是string类型的无序集合
    set元素最大可以包含(2的32次方-1)个元素
    关于set集合类型除了基本的添加删除操作,其它有用的操作还包含集合的取并集(union),
    交集(intersection),差集(difference)。通过这些操作可以很容易的实现类似好友推荐的
    功能。

    注意:每个集合中的各个元素不能重复。

    (2)操作

    sadd key member           添加一个string元素到key对应的set集合中,成功返回1,
    如果元素已经在集合中返回0,key对应的set不存在,则创建一个只包含member元素作成员的集合。
    srem key member [member]  从key对应set中移出给定元素,成功返回1
    smove p1 p2 member        从p1对应set中移除member并添加p2对应set中
    scard key                 返回set的元素个数
    sismember key member      判断member是否在set中
    sinter key1 key2...keyN   返回所有给定key的交集 
    sunion key1 key2...keyN   返回所有给定key的并集 
    sdiff key1 key2...keyN    返回所有给定key的差集 
    smembers key              返回key对应set的所有元素,结果是无序的

    (3)使用

    我们模拟qq好友推荐的功能:

    首先我们添加tom的好友,创建tomFri的set集合类型数据,内部有五个元素

    然后创建linken的好友,创建linkenFri的set集合类型数据,内部有五个元素

    取两个set集合的交集,就可以得出两个用户的共同好友:

    取并集就是取得既有tom又有linken的好友,相同的数据会出现一次

    取差集,并不是是除了交集数据之外的所有数据,而是sdiff key1 key2中,
    只取得key1集合中没有key2的所有数据。

    想查看set集合的所有内容,使用smembers指令

    判断一个元素是否在集合中,使用sismember指令

    将tom中的jack转移到linken的好友集合中,使用smove指令,查看set集合
    目前的容量,使用scard指令

    将xiaoming从tom的好友集合中清除,使用srem指令


    转载请注明出处:http://blog.csdn.net/acmman/article/details/53289980

  • 相关阅读:
    web端常见兼容性问题整理
    浏览器初始化样式
    html5特效库
    csshack
    进程与线程,并发、并行、异步、多线程
    js复制粘贴事件
    dom range相关
    vue和react在使用上的对比
    ListView往TreView里面拖拽
    ListView添加项目带序列
  • 原文地址:https://www.cnblogs.com/kdy11/p/8892757.html
Copyright © 2020-2023  润新知