zoukankan      html  css  js  c++  java
  • Redis中set集合(无序)操作命令

    set集合(无序)

    set是一个无序的不重复元素的集合


    sadd

    往集合内部添加元素

    127.0.0.1:6379> sadd set1 a b c d
    (integer) 4
    127.0.0.1:6379> smembers set1
    1) "d"
    2) "a"
    3) "b"
    4) "c"
    127.0.0.1:6379>
    

    如果指定的key不存在会创建


    srem

    移除元素

    127.0.0.1:6379> srem set1 c 
    (integer) 1
    127.0.0.1:6379> smembers set1
    1) "d"
    2) "a"
    3) "b"
    127.0.0.1:6379>
    

    如果要移除的元素不存在,则返回0
    可以同时移出多个

    spop

    随机弹出一个元素

    127.0.0.1:6379> spop set1
    "d"
    127.0.0.1:6379> smembers set1
    1) "a"
    2) "b"
    127.0.0.1:6379>
    

    因为set是无序的,如果要修改某个元素的值,直接将它删除在添加一个新的即可,修改真正的意义是替换,可是
    set没有位置的概念(无序),替换就成了毫无意义的事情

    scard

    scard key
    返回set中的元素的个数

    如果查询一个不存在的key,返回0

    smembers

    smembers key
    返回集合中所有的元素

    sismember

    sismember key value
    查询value是否存在于key,存在返回1,否则返回0

    srandmember

    srandmember key [count]
    随机返回count个集合中元素,注意count不能大于集合内部元素数

    127.0.0.1:6379> srandmember set2
    "3"
    127.0.0.1:6379> srandmember set2 3
    1) "96"
    2) "2"
    3) "5"
    

    交集

    sinter

    sinter key1 key2 ....
    返回key1key2或更多key中的交集(相同元素)

    127.0.0.1:6379> sadd set1 1 2 3 45 6
    (integer) 5
    127.0.0.1:6379> sadd set2 8 5 2 96 3
    (integer) 5
    127.0.0.1:6379> sinter set1 set2
    1) "2"
    2) "3"
    

    sinterstore

    sinterstore newkey key1 key2 ...
    key1key2或更多key的交集合并到新的集合newkey

    127.0.0.1:6379> sinterstore set3 set1 set2
    (integer) 2
    127.0.0.1:6379> smembers set3
    1) "2"
    2) "3"
    

    并集

    sunion

    sunion key1 key2 ...

    将所有的key的元素合并返回,重复的值将只保留一个

    127.0.0.1:6379> sunion set1 set2
     1) "45"
     2) "a"
     3) "b"
     4) "2"
     5) "5"
     6) "1"
     7) "3"
     8) "96"
     9) "8"
    10) "6"
    

    sunionstore

    sunionstore newkey key1 key2....

    sinterstore类型,将并集移到newkey

    差集

    sdiff

    sdiff key1 key2 ...
    返回所有key的差集

    sdiffstore

    sdiffstore newkey key1 key2 ...

    将所有key的差集移入newkey

    移动

    smove

    smove key1 key2 value
    valuekey1中移动到key2

  • 相关阅读:
    15、TSA数据上传(https://www.ncbi.nlm.nih.gov/genbank/tsaguide/#SP)
    14、SRA数据上传
    14、批量处理文件
    .net mvc 利用分部视图局部刷新.
    观察者模式(Observer)
    内存和性能
    DOM中的事件对象(event)
    HTML事件处理程序
    惰性载入函数
    Comet之SSE(Server
  • 原文地址:https://www.cnblogs.com/liangshu/p/12408715.html
Copyright © 2011-2022 走看看