Redis工作笔记-Set类型
目錄
?
概述
操作
?
概述
Set類型為沒有排序的字符集合,可以在該類型上進行添加、刪除或判斷某一元素是否存在的操作, 最大為2的32次方的數據。
Set不允許有重復額元素。如多次添加相同的數據,Set中將保留一份。Set中還有個科學,在服務器端完成多個Sets之間的聚合,如unions并、intersections交和diffrerences差。由于這些操作均在服務器端完成,因此效率極高,而且節(jié)省了網絡開銷。
?
?
操作
添加Set數據,以及查詢
sadd myset a b c smembers myset這里要注意,集合中的元素,從結果來看,輸出的順序和插入的順序無關(無序的)
判斷集合中是否存在元素,如果不存在返回0
sismember myset a sismember myset e獲取集合中Set的數量:
scartd myset隨機返回集合Set的一個成員:
srandmember myset取出一個成員,成員會從集合中刪除
spop myset從Setzhon移除a、b、f三個成員,其中f、b并不存在,因此只有a被移除,返回值為1
srem myset a b f刪除一個集合:
del myset獲取多個集合之間的不同成員,要注意匹配規(guī)則,先將myset和myset2進行比較,a、b、d三個成員是兩者之間的差異成員,然后在用這個結果繼續(xù)和myset3進行差異比較,b和d是myset3不存在的成員
sadd myset a b c d sadd myset c sadd myset a c esdiff myset myset2 myset3 sdiff myset3 myset2 myset應用范圍,可以使用Redis的Set數據類型跟蹤一些唯一性的數據,比如訪問某以博客的唯一IP地址信息。
充分利用Set類型的服務端聚合操作方便、高效的特性,可以用于維護數據對象之間的關聯(lián)關系。比如購買某一電子設備的客戶ID被存儲在一個指定的Set中,而購買另外一種電子產品的客戶ID被存儲在另外一個Set中,如果此時要獲取有哪些客戶同時購買了2種商品時,Set的intersections命令就可以充份發(fā)揮他的方便和效率的優(yōu)勢。
?
總結
以上是生活随笔為你收集整理的Redis工作笔记-Set类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java笔记-腾讯验证码平台使用实例
- 下一篇: Flask笔记-通过Model访问数据库