redis的入门篇---五种数据类型及基本操作

查看所有的key

keys *

清空所有的key

flushall

检查key是否存在

exists key

设置已存在的key的时长

expire key  10      //设置key为10s

查看key还剩多少时长

ttl key   //-1是永久    -2是不存在

查看key的类型

type key

随机取出一个key

randomkey

重命名key

rename key  newkey    //如果key存在  直接覆盖

renamenx key newkey    //如果key存在 则失败  返回0

设置一定时间的key

setex key seconds val    //key  时间   val

psetex key seconds val   //和上面的功能一样   只不过多加一个p   区别是上面的时间是秒级别的   这个是毫秒级别的

字符串类型:

得到指定范围的字符串

getrange key 0 2    //闭合区间  取三个长度的字符串

得到旧的值并赋予新的值

getset key newval   

//比如说get a    得到A
//然后getset a AA  还是得到A
//但此时get a    得到的是AA

在字符串后面追加字符串

append key  append    //意思是在key的val后面加上append字符串

hash哈希(其实就是一个Map<String,Map<String,String>>格式的数据结构)

设置值

hset map name  liuzhonghua   //成功1  

检验是否存在

hexists map name     //存在1   不存在0

得到值

hget map name    //返回liuzhonghua

得到key所有的值

hgetall  map   

//返回  下面的这中格式    key val  key  val

name
liuzhonghua
age
23
sex
man

得到值里面所有的key 和所对应的val

hkeys map  

//返回

name
age
sex
hvals map 
liuzhonghua23man

list列表

lpush list 1 2 3 4 5 6  //lpush 特点是最后放进去的总是在第一位

取一定范围的list值和特定索引的值

lrange list 0 2  //得到1 2 3

lindex list 3    //得到4

移除最后一个元素和第一个元素

lpop list  //移除第一个元素  6  返回6

rpop list   //移除最后一个元素 1  返回1 

set列表(特点:无序,不保证你放进去的和得到的顺序一致,值不重复)

增加

sadd set a b c d   //key是set    val 是  a b c d

得到这个集合的数量

scard  set        //返回4

查看key的val

smembers  set  //a b c d

两个集合的差集

sdiff set1 set2  //意思是set1 里面的值减去 set2里面的值  得到set1里面的值

两个集合的交集

sinter set1  set2

两个集合的并集

sunion set1 set2

返回指定数量的随机数

srandmember  set1  2     //随机返回set1的两个值

判断是否是集合的元素

sismember set1 a   //如果是 返回1  否则返回0

移除指定的val

srem set1 a b      //移除set1集合里面的a和b   返回成功的个数  2

随机移除set里面的val 并返回移除的值

spop  set1   //随机返回一个值

zset (有序集合,不重复)

增加(还得必须这样写  真操蛋  看不懂   后面都是一对一对的    艹,,,我懂了,100这样的数值是必须写的,因为是靠他们排序的,我们平常获取的值都是abc

这样的,切记)

zadd zset  100 a  200 b  300 c    // key是zset  a的分数是100   b的分数是200   c的分数是300

查看有几个元素

zcard zset    //返回3

查看指定的某个值(还得必须这样写  )

zscore zset a    //返回100   

返回符合指定区间的数量

zcount zset  0 200   //返回2   闭合区间  就是说a 和 b 他俩所对应的值在0和200之间  符合要求

查看索引

zrank zset a    //0
zrank zset b    //1
zrank zset c    //2  

增加值

zincrby zset 1000 a   //意思是让a的值增加1000  当然a的顺序也会改变,因为zset是有序的 是根据他所对应的值来排序的

获取指定的元素

zrange zset  0  100    //意思是获取zset的前100个元素   a b c 

如果想获取一对一对的 比如说  a 100 b 200 c 300

zrange zset 0 100 withscores  

原文地址:https://www.cnblogs.com/coder-lzh/p/8720084.html

时间: 2024-10-09 06:07:32

redis的入门篇---五种数据类型及基本操作的相关文章

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

string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一段内容 设置及获取字符串的某一位(bit) 批量设置一系列字符串的内容 应用场景: String是最常用的一种数据类型,普通的key/value存储都可以归为此类,value其实不仅是String, 也可以是数字:比如想知道什么时候封锁一个IP地址(访问超过几次).INCRBY命令让这些变得很容易,

轻松搞定高并发:详解Redis的五种数据类型及应用场景分析!

一.Redis基本概念介绍和特性 1.1 Redis基本概念介绍 1.Redis是远程的,有客户端和服务端,我们一般说的是服务端: 2.Redis是基于内存的,所以比基于硬盘的MySQL要快很多,但非常吃内存 3.Redis是非关系型数据库.本质上也是数据库,但MySQL关系型数据库存储时必须定义数据词典,而Redis则不需要. 1.2 Redis 和 Memcached比较 Redis数据类型都支持push/pop.add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的

Redis——五种数据类型

Redis共有strings.hashs.lists.sets.sorted sets五种数据类型,可以说已经比较丰富了.下面只对这几种数据类型的数据结构与用途做简要介绍.至于每种数据类型的操作API,这里只简单一提,不再一一详细介绍,有需要的用户可以Google即可. 一.    strings string是最简单的类型,一个Key对应一个Value.string类型是类型安全的,Redis的string可以包含任何数据,比如jpg图片或者序列化的对象.存储结构如下: 常用的API函数有:

redis的五种数据类型

redis的五种数据类型 redis客户端建立 ./redis-cli -h 192.168.1.22 -p 6380 --raw 1.String 应用场景: 统计网站访问数量.当前在线人数.微博数.粉丝数等,全局递增ID等 . 常用命令: SET key value GET key MSET key1 value1 [key2 value2] MGET key1 key2 INCR key DECR key SETNX key value  #只有key 不存在时,才设置key的值 2.Ha

Java 操作 Redis 五种数据类型

项目添加依赖 <!-- Redis 依赖 --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> Java 怎么连接 Redis //连接 Redis @Test public void initConn01(){ S

【SSRS】入门篇(五) -- 设置报表格式

原文:[SSRS]入门篇(五) -- 设置报表格式 在上一节 [SSRS]入门篇(四) -- 向报表添加数据 我们设置好了报表,并可以预览到数据,如下图: 当报表完成后,有个重要的工作就是美化报表格式,这一节将讲解: 设置日期格式 设置货币格式 更改文本样式和列宽 设置日期格式:默认情况下,Data字段显示日期和时间信息:这边我们格式设置为中文日期. 1.单击"设计"选项页: 2.右键单击字段[Date],在弹出的菜单单击"文本框属性": 3.单击"数字&

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

http://www.cnblogs.com/lori/archive/2012/05/15/2501862.html Redis学习笔记~Redis提供的五种数据结构 回到目录 分布式缓存,消息队列,替代Session呵呵(Session太不稳定了,呵呵)=Redis Redis的崛起绝非偶然,它确实有自己的新东西在里面,它不像Memcached,只能将数据存储在内存中,它提供了持久化机制,避免了場机后的雪崩的问题,即服务器出现问题后,内存中保留的原始数据全部丢失,需要重新组织数据到内存,这时

StackExchange.Redis的使用 Redis五种数据类型的应用

ConnectionMultiplexer ConnectionMultiplexer 是StackExchange.Redis的核心对象,用这个类的实例来进行Redis的一系列操作,对于一个整个应用程序应该只有一个ConnectionMultiplexer 类的实例.上一章中StackExchangeRedisHelper 的相关代码如下 private static ConnectionMultiplexer _instance = null; /// <summary> /// 使用一个

redis 五种数据类型

前言 前面学会了单机, 学会了集群, 但是redis咋用啊? 或者说, redis支持哪些数据类型呢? 常用的有五种: String , Hash, List, Set, zset(SortedSet) 一.String String 类型, 在前面也是使用过的. 直接来看一下 可以使用del name来删除缓存 二.List push指令: push分两个, 一个从左边push, 一个从右边push. 但是这个左右, 是对准备push的值而言的. 而不是针对将要push的数组来说的. pop指