目錄
- redis 支持 Set集合的數據存儲,其中有三個比較特殊的方法:
- 1.1、sinter 交集的示例
- 1.2、sunion 并集的示例
- 1.3、sdiff 差集的示例
- 二、sinterstore、sunionstore、sdiffstore
- 2.1、sinterstore 交集的示例
- 2.2、sunionstore 并集的示例
- 2.3、sdiffstore 差集的示例
一、sinter 、sunion 、sdiff
redis 支持 Set集合的數據存儲,其中有三個比較特殊的方法:
- sinter key [key …] 查看一個集合的全部成員,該集合是所有給定集合的交集。
- sunion key [key …] 查看一個集合的全部成員,該集合是所有給定集合的并集。
- sdiff key [key …] 查看所有給定 key 與第一個 key 的差集
1.1、sinter 交集的示例
redis> SMEMBERS group_1
1) "LI LEI"
2) "TOM"
3) "JACK"
redis> SMEMBERS group_2
1) "HAN MEIMEI"
2) "JACK"
redis> SINTER group_1 group_2 # 取的是交集的數據
1) "JACK"
1.2、sunion 并集的示例
redis> SMEMBERS songs
1) "Billie Jean"
redis> SMEMBERS my_songs
1) "Believe Me"
redis> SUNION songs my_songs # 取的是集合的并集數據據
1) "Billie Jean"
2) "Believe Me"
1.3、sdiff 差集的示例
redis> SMEMBERS peter_movies
1) "bet man"
2) "start war"
3) "2012"
redis> SMEMBERS joe_movies
1) "hi, lady"
2) "Fast Five"
3) "2012"
redis> SDIFF peter_movies joe_movies # 取的是兩個集合的差集的數據
1) "bet man"
2) "start war"
二、sinterstore、sunionstore、sdiffstore
- sinterstore destination key [key …] 將 交集 數據存儲到某個對象中
- sunionstore destination key [key …] 將 并集 數據存儲到某個對象中
- sdiffstore destination key [key …] 將 差集 數據存儲到某個對象中
2.1、sinterstore 交集的示例
redis> SMEMBERS songs
1) "good bye joe"
2) "hello,peter"
redis> SMEMBERS my_songs
1) "good bye joe"
2) "falling"
redis> SINTERSTORE song_interset songs my_songs # 將交集的數據存儲到 song_interset 對象中
(integer) 1
redis> SMEMBERS song_interset # 查看 song_interset 對象中的 所有數據
1) "good bye joe"
2.2、sunionstore 并集的示例
redis> SMEMBERS NoSQL
1) "MongoDB"
2) "Redis"
redis> SMEMBERS SQL
1) "sqlite"
2) "MySQL"
redis> SUNIONSTORE db NoSQL SQL # 將并集的數據存儲到 db 對象中
(integer) 4
redis> SMEMBERS db # 查看 db 對象中的 所有數據
1) "MySQL"
2) "sqlite"
3) "MongoDB"
4) "Redis"
2.3、sdiffstore 差集的示例
redis> SMEMBERS joe_movies
1) "hi, lady"
2) "Fast Five"
3) "2012"
redis> SMEMBERS peter_movies
1) "bet man"
2) "start war"
3) "2012"
redis> SDIFFSTORE joe_diff_peter joe_movies peter_movies # 將差集的數據存儲到 joe_diff_peter 對象中
(integer) 2
redis> SMEMBERS joe_diff_peter # 查看 joe_diff_peter 對象中的 所有數據
1) "hi, lady"
2) "Fast Five"
到此這篇關于redis 交集、并集、差集的具體使用的文章就介紹到這了,更多相關redis 交集、并集、差集內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Spring Boot Redis 集成配置詳解
- Redis如何存儲對象與集合示例詳解
- 詳細分析Redis集群故障
- Redis有序集合類型的常用命令小結
- 淺談SpringBoot集成Redis實現緩存處理(Spring AOP實現)
- Redis集群搭建全記錄
- Java調用Redis集群代碼及問題解決
- Redis集群下過期key監聽的實現代碼