redis五种数据类型:String,Hash,List,Set,ZSet。五种数据类型各有优点,各司其职。最后两种数据类型Set和ZSet基本上是一种,ZSet就是给Set加了个排序而已(相当于加了个属性)。

Set是通过Hash表实现,增删改的查找复杂度都是O(1)。ZSet相当于Set的升级版本。

下面直接上命令了:

 Set:无序集合,通过hash table实现,添加,删除,查找复杂度都是O(1)
   命令:
   sadd myset hello   向myset集合添加hello元素(不能重复,重复返回0)
   smembers myset   查看myset集合中所有元素
   srem  myset hello  删除myset中的hello元素
   spop myset    从myset中随机删除一个元素
   sdiff myset1 myset2   集合myset1和集合myset2的差集(1有而2没有的)
   sdiffstore myset3 myset1 myset2   将myset1和myset2的差集存入myset3
   sinter myset1 myset2   获取myset1和myset2的交集
   sinterstore myset3 myset1 myset2  将myset1和myset2的交集存入myset3
   sunion myset1 myset2 获取myset1和myset2的并集
   sunionstore myset3 myset1 myset2 将myset1和myset2的并集存入myset3
   smove myset1 myset2 jeyson   将jeyson元素从myset1移到myset2中
   scard myset1  获取myset1中元素个数
   sismember myset1 hello  测试hello是否是myset1的元素,是返回1 否则0
   srandmember myset1   随机返回myset1一个元素,但不删除
ZSet:有序集合,为Set的升级版本,增加了一个顺序属性
   命令:
  zadd myset 1 one   向myset集合添加顺序为1的元素one
     更新顺序也是这个命令  zadd myset 2 one  把one的顺序号改为2
  zrange myset 0 -1 withscores  获取集合中所有元素(带序号)
  zrevrange myset 0 -1 withscores  获取集合中所有元素(带序号)(降序)
  zrange myset 0 -1 获取集合中所有元素(不带序号)
  zrem myset one 删除集合中one元素
  zincrby myset 3 three  将three的顺序号增加3(如果没有three则创建three,顺序为3)
  zrank myset one 返回one的索引(不是顺序,索引从0开始)(升序后)
  zrevrank myset one 返回one的索引(从大到小)(降序后)
  zrangebyscore myset 2 5 withscores 获取顺序为2-5的元素
  zcount myset 2 5  返回集合中顺序在2-5的元素数量
  zcard myset  返回集合中所有元素个数
 zremrangebyrank  myset 2 5  删除指定索引区间内(2-5)的元素
 zremrangebyscore  myset 2 5  删除指定顺序区间内(2-5)的元素

初识redis之常用Set和ZSet命令

转自:http://blog.csdn.net/js_sky/article/details/49907763

redis之常用Set和ZSet命令的更多相关文章

  1. 什么是redis?常用的命令有哪些?

    1.什么是redis? redis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是一个NOSQL类型数据库,是为了解决高并发.高扩展,大数据存储等一系列的问题而产生的数据库 ...

  2. centos7 yum安装redis及常用命令

    redis是什么 Redis是一种基于内存的数据结构存储,可持久化的日志型.Key-Value数据库.使用关系型数据库的站点达到一定并发量的时候,往往在磁盘IO上会有瓶颈,这时候配合redis就有一定 ...

  3. Redis 实战 —— 04. Redis 数据结构常用命令简介

    字符串 P39 Redis 的字符串是一个有字节组成的序列,可以存储以下 3 种类型的值:字节串(byte string).整数.浮点数. 在需要的时候, Redis 会将整数转换成浮点数.整数的取值 ...

  4. 【数据库】Redis(2)--Redis的常用数据类型及命令

    1.Redis主要数据类型分类 Redis中存储数据常用的数据类型主要有五种:String.List.Set.Sorted Set.Hash,这五种数据结构在Redis中存储数据的命令掌握对于我们后期 ...

  5. Jedis对Redis的常用命令操作

    本篇主要总结一些Jedis对Redis的常用命令操作: 1.对key操作命令 2.对String操作命令 3.对List操作命令 4.对Set操作命令 5.对Hash操作命令 6.排序操作指令 一.项 ...

  6. [置顶] Redis String类型数据常用的16条命令总结

    Redis String类型数据常用的16条命令总结 描述:String 类型是最简单的类型,一个Key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比 ...

  7. Linux下安装redis以及常用命令

    https://blog.csdn.net/zgf19930504/article/details/51850594 安装: 1.获取redis资源 wget http://download.redi ...

  8. Redis中常用命令

    连接操作相关的命令 quit:关闭连接(connection) auth:简单密码认证 持久化 save:将数据同步保存到磁盘 bgsave:将数据异步保存到磁盘 lastsave:返回上次成功将数据 ...

  9. 总结Linux 下Redis 操作常用命令(转)

    Redis的配置 Linux下安装 ]# wget http://download.redis.io/releases/redis-2.8.17.tar.gz ]# tar xzf redis-2.8 ...

随机推荐

  1. 部署和调优 2.0 squid服务介绍

    Squid 是比较知名的代理软件, 它不仅可以跑在 Linux 上还可以跑在 Windows 以及 Unix上,它的技术已经非常成熟.目前使用 Squid 的用户也是十分广泛的.Squid 与 Lin ...

  2. 【271】IDL-ENVI二次开发

    参考:String Processing Routines —— 字符串处理函数 01   STRING 返回字符串. 02   STRCMP 比较字符串,一样返回1,不一样返回0,默认大小写敏感. ...

  3. android opencv

    最近工作需求:用opencv来先做一个demo.扫描照片进行边缘检测和透视矫正. 之后会加入照片降噪等处理. 请教了一下搞图像的同事.他的提议: 1.绿盟的“黄色照片检测” 用的是动态的opencv库 ...

  4. Codeforces #505(div1+div2) C Plasticine zebra

    题意:给你一段字符串,可以选择任意多的位置,每个位置会反转两边的字符串,问交错的字符串最长是多长? 思路:找规律,仔细分析样例1.假设位置为 1 2 3 4 5 6 7 8 9,反转之后会发现答案是7 ...

  5. python http认证

    Requests 库有一个auth 模块专门用来处理HTTP 认证: import requestsfrom requests.auth import AuthBasefrom requests.au ...

  6. css田字格布局

    <!DOCTYPE html> <html> <head> <title></title> <style type="tex ...

  7. 3DPDF是个什么东西?

    就是可以把3D模型放入到PDF中,然后客户可以直接用adobe reader查看这个PDF.经过搜索发现,大多数PDF编辑软件都没有直接把3D模型插入到PDF中的功能. 很多是3D软件自身提供的,比如 ...

  8. 算法Sedgewick第四版-第1章基础-019一Scanner的用法

    package algorithms.fundamentals001; import java.util.Locale; import java.util.Scanner; import algori ...

  9. JavaPersistenceWithHibernate第二版笔记-第七章-003Mapping an identifier bag(@OrderColumn、@ElementCollection、@CollectionTable、、)

    一.结构 二.代码 1. package org.jpwh.model.collections.listofstrings; import org.jpwh.model.Constants; impo ...

  10. noi.ac day1t1 candy

    传送门 分析 我们知道如果设A,B分别为将两家店从大到小排序之后各自的前缀和,则 Ans=Max{Min{A[i],B[j]}-W*(i+j)}. 为了得到这个Ans我们可以枚举两个数的Min,然后剩 ...