Redis探索之路(四):Redis的五种数据类型Set和ZSet
一:Set无需集合
Set是个集合,string类型的无需集合,通过hash table实现,添加删除查找复杂度都是0(1)。对集合我们可以取并集,交集和差集。通过这些操作我们可以实现sns中的好友推荐和bolog的tag功能。
1.sadd新增
sadd myset "hello"
2.smembers查询所有元素
smembers myset
3.srem删除
srem myset "hello"
4.spop【随机】弹出一个元素
spop myset
5.sdiff两个集合的第一个集合的差集
sdiff myset2 myset1
6.sinter取两个集合的交集
sinter myset1 myset2
7.sinterstore取两个集合的交集,并存储到新的集合
sinterstore newset myset1 myset2
8.sunion取两个集合的并集
sunionstore newset myset1 myset2
9.smove从第一个集合移除某个元素到第二个集合中
smove myset1 myset2 "cyz"
10.scard查看集合元素的个数
scard myset2
11.sismember判断某个元素是否为集合中的元素s
sismember myset1 "zwl"
12.srandmember随机返回集合一个元素
srandmember myset2
二:Sorted Set有序集合
1.zadd新增
zadd myzset1 1 "one"
zadd myzset1 3 "two"
zadd myzset1 3 "two"
2.zrange查询
zrange myzset1 0 -1
zrange myzset1 0 -1 withscores
3.zrem移除
zrem myzset1 "one"
4,.zincrby增加指定
zrange myzset1 0 -1 withscoresztange
5.zrank 返回指定元素的索引值(从头部开始)
zrank sset1 five 4
6.zrevrank 返回指定元素的索引值(从尾部开始)
zrank sset1 five 0
7.zrevrange降序排序
8.zrangebyscore返回指定区间内的元素
zrangebyscore sset1 2 3 withscores
9.zcount返回指定数量
zcount sset1 2 3
10.zcard返回所有数量
zcard sset1
11.zremrangebyrank删除指定索引内的元素
zremrangebyrank sset1 1 1
Redis探索之路(四):Redis的五种数据类型Set和ZSet的更多相关文章
- (转) 淘淘商城系列——Redis五种数据类型介绍
http://blog.csdn.net/yerenyuan_pku/article/details/72855562 Redis支持五种数据类型:string(字符串),hash(哈希),list( ...
- Redis命令操作简介及五种value数据类型
转自:https://blog.csdn.net/ty4315/article/details/52050721 Redis是使用键值存储数据,key必须是字符串value支持五种数据类型,最新版本又 ...
- redis五种数据类型的使用(zz)
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用场景
string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- Redis五种数据类型-设置key的过期时间
1.redis命令客户端 [root@localhost bin]# ./redis-cli 127.0.0.1:6379> #是否运行着 127.0.0.1:6379> ping PON ...
- Redis安装及五种数据类型
redis是非关系型数据库,也叫内存数据库.数据是键值对的形式,通过key查找value 安装Radis:6379 sudo apt-get update sudo apt-get install r ...
- Redis: Redis支持五种数据类型
ylbtech-Redis: Redis支持五种数据类型 Redis支持五种数据类型:string(字符串) ,hash(哈希),list(列表),set(集合)及zset(sorted set:有序 ...
- Redis支持的五种数据类型
redis支持的五种数据类型: 1.string(字符串) 2.hash(哈希) Redis hash 是一个键值(key=>value)对集合. Redis hash是一个string类型的f ...
随机推荐
- ionic3.0 中带顶部导航的下拉刷新列表的实现
1.最终实现效果 2.html代码布局: 3.css样式控制(注:下面这两个css类名需在浏览器解析后才可看到)
- Java中date和calendar的用法
获取现在系统的时间和日期看起来是一件非常神奇的事情,但是当使用date和calendar之后发现仍然非常神奇. 1.date 使用date日期之前需要导入包: import java.text.Sim ...
- case ...esac判断 function方法 循环loop,while do done,until do done
就类似于其他语言中的case语句 用法 要点 第一 开始结束 case esac 正好相反 第二 每段程序段需要用 两个:号结束. 例: } in "hello") ech ...
- 【精通css读书笔记】 第八章 布局
学习了css布局的基础后又来翻阅<精通css>这本经典书籍,对布局有了进一步的认识. 基于浮动的布局 两列的布局仍然是使用一个元素向左浮动,一个元素向右浮动,值得注意的是要加入displa ...
- ES模块的基本用法常见使用问题
本文作者:高峰,360奇舞团前端工程师,W3C WoT工作组成员. ES6中引入了模块(Modules)的概念,相信大家都已经挺熟悉的了,在日常的工作中应该也都有使用. 本文会简单介绍一下ES模块的优 ...
- #define和const的区别(转)
这个区别用从几个角度来说: 角度1:就定义常量说的话:const 定义的常数是变量 也带类型, #define 定义的只是个常数 不带类型. 角度2:就起作用的阶段而言:define是在编译的预处理阶 ...
- C++32位和64位常见类型的大小
32位 64位 char 1 1 int 4 大多数4,少数8 long 4 ...
- Hadoop常用端口和定义方法
Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如 ...
- js基本算法
一.阶乘(递归思想) // 计算阶乘 function factorial(n) { if (n === 1) { return 1 } return n * factorial(n - 1) } 二 ...
- Delphi 方法:overload、override、virtual、dynamic、abstract
1.overload 在Pascal语法规则中,同一个UNIT里是不能存在两个同名的函数的,例如: function func(): Boolean; function func(const x: C ...