在Redis中,Set是一種無(wú)序且不包含重復(fù)元素的數(shù)據(jù)結(jié)構(gòu)。要避免數(shù)據(jù)冗余,您需要確保在添加元素之前檢查該元素是否已經(jīng)存在于集合中。您可以使用SADD
命令將元素添加到集合中,如果元素已經(jīng)存在,那么這個(gè)命令不會(huì)對(duì)集合產(chǎn)生任何影響。
以下是一個(gè)簡(jiǎn)單的示例:
> SADD my_set item1
(integer) 1
> SADD my_set item2
(integer) 1
> SADD my_set item1
(integer) 0
在這個(gè)例子中,我們首先將item1
添加到集合my_set
中,然后再次嘗試添加相同的元素。由于item1
已經(jīng)存在于集合中,所以SADD
命令返回0,表示沒(méi)有添加任何新元素。
如果您需要檢查元素是否已經(jīng)存在于集合中,可以使用SISMEMBER
命令:
> SISMEMBER my_set item1
(integer) 1
> SISMEMBER my_set item3
(integer) 0
這個(gè)命令返回1表示元素存在于集合中,返回0表示元素不存在。這樣,您可以確保在添加元素之前檢查其是否已經(jīng)存在于集合中,從而避免數(shù)據(jù)冗余。