相关命令

1.SADD

  SADD key-name item1 [item 2…]

将一个或多个成员元素加入到集合中

2.SREM

  SMEMBERS  key-name item1 [item 2…]

移除集合中的一个或多个成员元素,不存在的成员元素会被忽略

3.SMEMBERS

  SMEMBERS key-name

返回集合中的所有的成员。 不存在的集合 key 被视为空集合

4.SCARD

  SCARD key-name

返回集合中元素的数量

php示例

$redis = new redis();
$redis->connect('127.0.0.1', 6609);
$redis->delete('set1');
$redis->delete('set2');
$redis -> sAdd('set1','a','b','c','d','e');
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//rem
//结果 array(5) { [0]=> string(1) "d" [1]=> string(1) "a" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" }
var_dump($redis -> sRem('set1','d','e'));
echo "<br/>";
//结果 int(2)
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果 array(3) { [0]=> string(1) "b" [1]=> string(1) "c" [2]=> string(1) "a" }
var_dump($redis -> sCard('set1'));
echo "<br/>";
//结果 int(3)

5.SMOVE

  SMOVE source-key dest-key item

  将 item元素从 source-key集合移动到 dest-key 集合

  成功移除返回1,否则返回0

php示例

var_dump($redis -> sMove('set1','set2','c'));
echo "<br/>";
//结果 bool(true)
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果 array(2) { [0]=> string(1) "b" [1]=> string(1) "a" }
var_dump($redis -> sMembers('set2'));
echo "<br/>";
//结果 array(1) { [0]=> string(1) "c" }

6.SPOP

SPOP key-name

  随机移除集合中的一个元素

php示例

//spop
var_dump($redis -> sPop('set1'));
echo "<br/>";
//结果 string(1) "a"
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果 array(1) { [0]=> string(1) "b" }

7.SISMEMBER

  SMEMBERS  key-name item

检测元素item是否存在与几何key-name中

php示例

var_dump($redis -> sMembers('set1'));
//结果 array(2) { [0]=> string(1) "b" [1]=> string(1) "a" }
var_dump($redis -> sIsMember('set1','a'));
echo "<br/>";
//结果 bool(true)

8.SRANDMEMBER

SRANDMEMBER  key-name [count]

从集合里面随机返回一个或多个元素

php示例

//srandmember
$redis->delete('set1');
$redis -> sAdd('set1','a','b','c','d','e');
var_dump($redis -> sRandMember('set1'));
echo "<br/>";
//结果 string(1) "b"
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果 array(5) { [0]=> string(1) "c" [1]=> string(1) "b" [2]=> string(1) "e" [3]=> string(1) "a" [4]=> string(1) "d" }
var_dump($redis -> sRandMember('set1',3));
echo "<br/>";
//结果 array(3) { [0]=> string(1) "c" [1]=> string(1) "b" [2]=> string(1) "d" }
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "c" [1]=> string(1) "b" [2]=> string(1) "e" [3]=> string(1) "a" [4]=> string(1) "d" }

9.SINTER

SINTER key-name [key-name1……]

返回给定所有给定集合的交集。 不存在的集合 key 被视为空集。 当给定集合当中有一个空集时,结果也为空集

10.SINTERSTORE

SINTERSTORE key-name [key-name1……]

将给定集合之间的交集存储在指定的集合中。如果指定的集合已经存在,则将其覆盖

php示例

$redis->delete('set1');
$redis->delete('set2');
$redis -> sAdd('set1','a','b','c','d','e');
$redis -> sAdd('set2','a','b','x','y','z');
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "d" [1]=> string(1) "a" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" }
var_dump($redis -> sMembers('set2'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "y" [1]=> string(1) "x" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" }
var_dump($redis -> sInter('set1','set2'));
echo "<br/>";
//结果array(2) { [0]=> string(1) "a" [1]=> string(1) "b" }
var_dump($redis -> sInterStore('set-inter','set1','set2'));
echo "<br/>";
//int(2)
var_dump($redis -> sMembers('set-inter'));
echo "<br/>";
//结果array(2) { [0]=> string(1) "a" [1]=> string(1) "b" }

11.SUNION

SUNION key-name [key-name1……]

返回给定集合的并集。不存在的集合 key 被视为空集

12.SUNIONSTORE

SUNIONSTORE  dest-key key-name [key-name1……]

将给定集合的并集存储在指定的集合 dest-key中

php示例

$redis->delete('set1');
$redis->delete('set2');
$redis -> sAdd('set1','a','b','c','d','e');
$redis -> sAdd('set2','a','b','x','y','z');
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "d" [1]=> string(1) "a" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" }
var_dump($redis -> sMembers('set2'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "y" [1]=> string(1) "x" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" }
var_dump($redis -> sUnion('set1','set2'));
echo "<br/>";
//结果array(8) { [0]=> string(1) "y" [1]=> string(1) "z" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" [5]=> string(1) "x" [6]=> string(1) "d" [7]=> string(1) "a" }
var_dump($redis -> sUnionStore('set-union','set1','set2'));
echo "<br/>";
//int(8)
var_dump($redis -> sMembers('set-union'));
echo "<br/>";
//结果array(8) { [0]=> string(1) "y" [1]=> string(1) "z" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" [5]=> string(1) "x" [6]=> string(1) "d" [7]=> string(1) "a" }

13.SDIFF

SDIFF key-name [key-name1……]

返回给定集合之间的差集

14.SDIFFSTORE

SDIFF dest-key key-name [key-name1……]

将给定集合之间的差集存储在指定的集合dest-key中

php示例

$redis->delete('set1');
$redis->delete('set2');
$redis -> sAdd('set1','a','b','c','d','e');
$redis -> sAdd('set2','a','b','x','y','z');
var_dump($redis -> sMembers('set1'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "d" [1]=> string(1) "a" [2]=> string(1) "c" [3]=> string(1) "b" [4]=> string(1) "e" }
var_dump($redis -> sMembers('set2'));
echo "<br/>";
//结果array(5) { [0]=> string(1) "y" [1]=> string(1) "x" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" }
var_dump($redis -> sDiff('set1','set2'));
echo "<br/>";
//结果array(3) { [0]=> string(1) "d" [1]=> string(1) "c" [2]=> string(1) "e" }
var_dump($redis -> sDiffStore('set-diff','set1','set2'));
echo "<br/>";
//int(3)
var_dump($redis -> sMembers('set-diff'));
echo "<br/>";
//结果array(3) { [0]=> string(1) "d" [1]=> string(1) "c" [2]=> string(1) "e" }
sisMember

redis 的set数据类型的更多相关文章

  1. redis五种数据类型的使用(zz)

    redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...

  2. redis中各种数据类型对应的jedis操作命令

    redis中各种数据类型对应的jedis操作命令 一.常用数据类型简介: redis常用五种数据类型:string,hash,list,set,zset(sorted set). 1.String类型 ...

  3. redis五种数据类型的使用

    redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...

  4. Redis进阶实践之四Redis的基本数据类型

    一.引言    今天正式开始了Redis的学习,如果要想学好Redis,必须先学好Redis的数据类型.Redis为什么会比以前的Memchaed等内存缓存软件使用的更频繁,适用范围更广呢?就是因为R ...

  5. redis数据库各种数据类型的增删改查命令

    redis的常用数据操作: redis是key-value的数据结构,每条数据都是一个键值对. 键的类型是字符串并且键不能重复. redis最基本数据类型是string 所以下面的操作可以省略引号&q ...

  6. redis的基本数据类型

    一:redis是一个开源的,使用C语言编写,支持网络,可基于内存亦可持久化的日志型,key-value方式存储的nosql数据库.作为缓存服务器,速度效率都很快,和memcache相似 redis支持 ...

  7. redis中各种数据类型的常用操作方法汇总

    在spring中使用jedisTemplate操作,详见https://www.cnblogs.com/EasonJim/p/7803067.html 一.Redis的五大数据类型 1.String( ...

  8. redis五种数据类型的使用场景

    string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...

  9. redis 五种数据类型

    前言 前面学会了单机, 学会了集群, 但是redis咋用啊? 或者说, redis支持哪些数据类型呢? 常用的有五种: String , Hash, List, Set, zset(SortedSet ...

  10. Redis进阶实践之四Redis的基本数据类型(转载4)

    Redis进阶实践之四Redis的基本数据类型 一.引言 今天正式开始了Redis的学习,如果要想学好Redis,必须先学好Redis的数据类型.Redis为什么会比以前的Memchaed等内存缓存软 ...

随机推荐

  1. php 验证所传参数为必填的时候的验证逻辑

    此段代码摘自lumen框架: xx/vendor/illuminate/validation/Validator.php /** * Validate that a required attribut ...

  2. git的使用总结

    git使用技巧 git使用技巧 windows下git使用 git ignore file git 打tag vim编码设置 git ls显示中文乱码问题 git view history 查看某个文 ...

  3. TCP 和 UDP 在socket编程中的区别(转)

    一.TCP与UDP的区别 基于连接与无连接  对系统资源的要求(TCP较多,UDP少)  UDP程序结构较简单  流模式与数据报模式  TCP保证数据正确性,UDP可能丢包  TCP保证数据顺序,UD ...

  4. Swing获取字符串的宽度和高度

    import java.awt.Color; import java.awt.Font; import java.awt.font.FontRenderContext; import java.awt ...

  5. android 中解析json格式数据

    本文来自http://tonysun3544.iteye.com/category/188238 package com.tony.json; import android.app.Activity; ...

  6. C# BCC异或校验法

    通讯协议中最后一位是校验位 采用BCC(异或校验)法 这个怎么解释? 就是 把16进制的字符串转换成byte[]数据,依次拿出来进行异或一下 然后返回的值和校验位对比下 看看对不对 例如: 23230 ...

  7. 编译和运行java文件 找不到或无法加载主类

    这边提供一个关于程序中含有package关键字,使用“终端”运行程序时出现“找不到或无法加载主类”,而使用Eclipse软件可以正常运行程序的可能解决办法. 例如程序名为HelloWorldTest. ...

  8. 经典JS

    用apply把document当作this传入getId函数,帮助“修正”this; document.getElementById = (function (func) { return funct ...

  9. Redis 学习笔记2

    数据类型: string 字符串类型      一个键最多存储512MB     1> SET :设置key对应的value,如果key存在,同名会产生覆盖         SET key va ...

  10. Some Parameter Interpretation On Using Mininet

    MiniNet使用很简单,下面以下面帮助界面截图为例,简单讲述常见的几个命令即可: sudo mn --topo single,3--mac --switch ovsk--controller rem ...