国产睡熟迷奷白丝护士系列精品,中文色字幕网站,免费h网站在线观看的,亚洲开心激情在线

      <sup id="hb9fh"></sup>
          1. 千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

            手機站
            千鋒教育

            千鋒學習站 | 隨時隨地免費學

            千鋒教育

            掃一掃進入千鋒手機站

            領取全套視頻
            千鋒教育

            關注千鋒學習站小程序
            隨時隨地免費學習課程

            當前位置:首頁  >  技術干貨  > Redis數(shù)據(jù)類型Set集合

            Redis數(shù)據(jù)類型Set集合

            來源:千鋒教育
            發(fā)布人:zyh
            時間: 2023-06-13 13:07:00 1686632820

              一. 概述

              首先我們來看看Redis中的Set類型有什么特點。

              與List相比,Set集合中的元素不允許重復,一個集合中最多可以對應2^32-1(4294967295)個元素。

            1683695207717.image

              Set除了可以執(zhí)行增刪改查的命令之外,還支持交集、并集、差集等的計算。

              二. 基本命令

              對我們來說,常用的Set命令有如下幾種。

            1683695228983.image

              1.插入操作  

            #插入: sadd key value1 value2 .....
            192.168.65.15:6379> sadd student aa bb cc
            #返回新增成功value的個數(shù)
            (integer) 3

            #第二次插入,由于存在重復元素,所以不成功
            192.168.65.15:6379> sadd student aa bb cc
            (integer) 0

              2. 查詢操作 ............. 

            #查詢所有: smembers key
            192.168.65.15:6379> smembers student

            "aa"
            "cc"
            "bb"
            #查詢元素是否存在: sismember key value
            192.168.65.15:6379> sismember student aa
            #如果存在返回1
            (integer) 1
            #如果不存在返回0
            192.168.65.15:6379> sismember student dd
            (integer) 0

            #隨機返回count個元素: srandmember key count
            192.168.65.15:6379> srandmember student 2

            "aa"
            "cc"
            #返回集合元素的個數(shù):scard key
            192.168.65.15:6379> scard student
            (integer) 3

              3. 刪除操作  

            #刪除元素,返回刪除的個數(shù):srem key value...
            192.168.65.15:6379> srem student aa
            (integer) 1
            #查看一下,果然已刪除
            192.168.65.15:6379> smembers student

            "cc"
            "bb"
            #隨機刪除元素并返回刪除的元素
            192.168.65.15:6379> spop student 1

            "cc"
            #查看一下,果然已刪除
            192.168.65.15:6379> smembers student

            "bb"

              三. 交集、并集、差集

              除了以上幾種基本的操作之外,我們還可以計算集合的交集、并集、差集。

              1.計算交集

            1683695251793.image  

            #新增學生數(shù)據(jù):張三 20歲 男
            192.168.65.15:6379> sadd student1 zs 20 boy
            (integer) 3

            #新增學生數(shù)據(jù):李四 22歲 男
            192.168.65.15:6379> sadd student2 ls 22 boy
            (integer) 3

            #求這兩條數(shù)據(jù)的交集:boy
            192.168.65.15:6379> sinter student1 student2

            "boy"

              2.計算并集

            1683695266254.image

            #集合合并,并且重復部分只保留一份
            192.168.65.15:6379> sunion student1 student2

            "20"
            "boy"
            "22"
            "zs"
            "ls"

              3.計算差集

            1683695278254.image

            #sdiff key1 key2 結果是 key1中去重重復部分
            192.168.65.15:6379> sdiff student1 student2

            "20"
            "zs"

              4.保存結果

              最后我們把上述操作的命令完整地展示在下面。  

            #計算交集,并保存
            #sinterstore 保存的key key1 key2
            192.168.65.15:6379> sinterstore student_jj student1 student2
            (integer) 1
            192.168.65.15:6379> smembers student_jj

            "boy"
            #計算并集,并保存
            #sunionstore 保存的key key1 key2
            192.168.65.15:6379> sunionstore student_bj student1 student2
            (integer) 5
            192.168.65.15:6379> smembers student_bj

            "20"
            "boy"
            "22"
            "zs"
            "ls"
            #計算差集,并保存
            #sdiffstore 保存的key key1 key2
            192.168.65.15:6379> sdiffstore student_cj student1 student2
            (integer) 2
            192.168.65.15:6379> smembers student_cj

            "20"
            "zs"
            192.168.65.15:6379>

              四. 應用場景

              學習完了Set命令,我們又該把Set應用在哪些地方呢?以下是我們總結出來的一些常見應用場景。

            1683695295549.image

            #用戶1的開發(fā)語言標簽:
            192.168.65.15:6379> sadd user1 java go python
            (integer) 3

            #用戶2的開發(fā)語言標簽:
            192.168.65.15:6379> sadd user2 java net c#
            (integer) 3

            #用戶1和用戶2的開發(fā)語言共同標簽:
            192.168.65.15:6379> sinter user1 user2

            "java"
            #設置一個獎品池:一等獎num1 至 四等獎num4
            192.168.65.15:6379> sadd prize num1 num2 num3 num4
            (integer) 4
            #隨機抽取獎品
            192.168.65.15:6379> spop prize 1

            "num2"
            聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
            10年以上業(yè)內強師集結,手把手帶你蛻變精英
            請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
            免費領取
            今日已有369人領取成功
            劉同學 138****2860 剛剛成功領取
            王同學 131****2015 剛剛成功領取
            張同學 133****4652 剛剛成功領取
            李同學 135****8607 剛剛成功領取
            楊同學 132****5667 剛剛成功領取
            岳同學 134****6652 剛剛成功領取
            梁同學 157****2950 剛剛成功領取
            劉同學 189****1015 剛剛成功領取
            張同學 155****4678 剛剛成功領取
            鄒同學 139****2907 剛剛成功領取
            董同學 138****2867 剛剛成功領取
            周同學 136****3602 剛剛成功領取
            相關推薦HOT