redis的set类型(集合)是string类型数值的无序集合,并且集合元素唯一。
下面介绍go redis的集合用法。
go redis 集合(set)常用函数列表:
- SAdd - 添加集合元素
- SCard - 获取集合元素个数
- SIsMember - 判断元素是否在集合中
- SMembers - 获取集合中所有的元素
- SRem - 删除集合元素
- SPop,SPopN - 随机返回集合中的元素,并且删除返回的元素
1.SAdd
添加集合元素
// 添加100到集合中
err := client.SAdd("key",100).Err()
if err != nil {
panic(err)
}
// 将100,200,300添加到集合中
client.SAdd("key",100, 200, 300)
2.SCard
获取集合元素个数
size, err := client.SCard("key").Result()
if err != nil {
panic(err)
}
fmt.Println(size)
3.SIsMember
判断元素是否在集合中
// 检测100是否包含在集合中
ok, _ := client.SIsMember("key", 100).Result()
if ok {
fmt.Println("集合包含指定元素")
}
4.SMembers
获取集合中所有的元素
es, _ := client.SMembers("key").Result()
// 返回的es是string数组
fmt.Println(es)
5.SRem
删除集合元素
// 删除集合中的元素100
client.SRem("key", 100)
// 删除集合中的元素tizi和2019
client.SRem("key", "tizi", "2019")
6.SPop,SPopN
随机返回集合中的元素,并且删除返回的元素
// 随机返回集合中的一个元素,并且删除这个元素
val, _ := client.SPop("key").Result()
fmt.Println(val)
// 随机返回集合中的5个元素,并且删除这些元素
vals, _ := client.SPopN("key", 5).Result()
fmt.Println(vals)