Redis数据类型Set
Redis的SET是无序的String集合,它里面的元素是不会重复的。
SADD,SMEMBERS
SADD命令会添加新元素到SET,可以看到一次性可以添加一个或多个元素。
SMEMBERS可以获取set里所有的元素,但是每次调用得到结果的顺序是无法保证的。

SISMEMBER
SISMEMBER可以判断某个元素是否在set里,返回1表示存在,0表示不存在

SINTER
SINTER可以查看多个set之间的交集

SPOP
SPOP可以随机从set中移除一个或多个元素并返回

SUNIONSTORE


如果只有一个set需要合并的话,那么就相当于是复制,原来的数据保留
SCARD

SRANDMEMBER
SRANDMEMBER可以随机获取set里面的元素,但是不会移除它们

C#操作SET
class Program
{
static void Main(string[] args)
{
ConnectionMultiplexer connectionMultiplexer = ConnectionMultiplexer.Connect("120.132.116.153:6379");
IDatabase database = connectionMultiplexer.GetDatabase();
database.KeyDelete("set1");
database.KeyDelete("set2");
//SADD
database.SetAdd("set1", new RedisValue[] { , , , , , , });
//SNENBERS
var sets = database.SetMembers("set1");
foreach (var set in sets)
{
Console.WriteLine($"{set}");
}
Console.WriteLine($"{database.SetContains("set1", 0)}");
Console.WriteLine($"{database.SetContains("set1", 10)}");
Console.WriteLine("---------------------------");
//SADD
database.SetAdd("set2", new RedisValue[] { , , });
//SINTER
var sets1 = database.SetCombine(SetOperation.Intersect,
new RedisKey[] {"set1", "set2"});
foreach (var set in sets1)
{
Console.WriteLine($"{set}");
}
Console.WriteLine("---------------------------");
//SUNIONSTORE
var sets2 = database.SetCombine(SetOperation.Union,
new RedisKey[] { "set1", "set2" });
foreach (var set in sets2)
{
Console.WriteLine($"{set}");
}
Console.WriteLine("---------------------------");
//SCARD
Console.WriteLine($"{database.SetLength("set1")}");
Console.WriteLine("---------------------------");
//SRANDMEMBER
Console.WriteLine($"{database.SetRandomMember("set1")}");
Console.WriteLine($"{database.SetRandomMember("set1")}");
Console.WriteLine($"{database.SetRandomMember("set1")}");
Console.ReadLine();
}
}

Redis数据类型Set的更多相关文章
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
- redis数据类型及使用场景
Redis数据类型 String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令: set,get,decr,incr,mge ...
- Redis数据类型介绍
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...
- redis数据类型
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...
- Redis-cluster集群【第一篇】:redis安装及redis数据类型
Redis介绍: 一.介绍 redis 是一个开源的.使用C语言编写的.支持网络交互的.可以基于内存也可以持久化的Key-Value数据库. redis的源码非常简单,只要有时间看看谭浩强的C语言,在 ...
- Lua 数据类型和 Redis 数据类型之间转换
当 Lua 通过 call() 或 pcall() 函数执行 Redis 命令的时候,命令的返回值会被转换成 Lua 数据结构. 同样地,当 Lua 脚本在 Redis 内置的解释器里运行时,Lua ...
- redis数据类型-散列类型
Redis数据类型 散列类型 Redis是采用字典结构以键值对的形式存储数据的,而散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他 ...
- redis数据类型-字符串类型
Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...
- redis笔记总结之redis数据类型及常用命令
三.常用命令 3.1 字符串类型(string) 字符串类型是Redis中最基本的数据类型,一个字符串类型的键允许存储的数据的最大容量为512MB. 3.1.1 赋值与取值: SET key valu ...
- redis介绍、安装、redis持久化、redis数据类型
1.redis介绍 2.安装管网:https://redis.io/下载:wget -c http://download.redis.io/releases/redis-4.0.11.tar.gz解 ...
随机推荐
- JavaScript - proxy
Proxy 对象用于定义基本操作的自定义行为(如属性查找,赋值,枚举,函数调用等). 来看看常用的方法 handler.get() let o = { name: 'liwenchi', age: 1 ...
- [HNOI/AHOI2018]毒瘤
题目描述 https://www.lydsy.com/JudgeOnline/upload/201804/%E6%B9%96%E5%8D%97%E4%B8%80%E8%AF%95%E8%AF%95%E ...
- Curl请求慢
背景原因:测试环境发现一个连接内网访问和外网访问延迟差别很大,内网访问很快.外网访问很慢.于是我们用curl来诊断问题所在的区域! 命令如下: 1 curl -o /dev/null -s -w %{ ...
- anacodna/python 安装 tensorflow
study from : https://www.cnblogs.com/HongjianChen/p/8385547.html 执行1-6 7 安装jupyter 每次使用tensorflow,都要 ...
- Day055--MySQL--外键的变种,表与表的关系,单表查询,多表查询, 内连接,左右连接,全外连接
表和表的关系 ---- 外键的变种 * 一对多或多对一 多对多 一对一 参考 https://www.cnblogs.com/majj/p/9169416.html 如何找出两张表之间的关系 分析步骤 ...
- zabbix模板化监控
zabbix模板化监控 1. 实验简述 在zabbix监控中,有很多组的概念,具体有以下几种: 1. 主机和主机组,相同类型/应用的主机,可以归属于同一个主机组 2. item和application ...
- 二、Tensorflow的作用域和图
作用域主要用来不用重复定义变量,另外就是用与画图 import tensorflow as tf ''' 可视化 tf.summary.scalar 添加一个标量 tf.summary.audio 添 ...
- freetype 字形解析
目录 freetype 字形解析 字体管理 数据结构 字体抽象 title: freetype 字形解析 date: 2019/3/7 20:17:46 toc: true --- freetype ...
- hadoop记录-hive常见设置
分区表 set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict;create tabl ...
- VS.NET C# 开发ArcGis插件无法进入断点调试的解决方法
有人问起,想起来码到这儿,再有人问可以直接给链接参考. 以10.1为例,因为博主一直用的它,所以只能是这个例.其他版本如有不同,那就不同吧. 首先,得确认调试时启动了外部程序 在项目属性→调试→启动外 ...