一、Redis 数据类型及结构特点

Redis 最常见的5中数据结构有 String(字符串),List(列表),Set(集合),Hash(散列),Sorted Sets (有序集合),下表简单总结了五种数据结构的内部组成及特点。

 二、Redis 数据类型常用命令

1  String 常用命令

1.1    SET 为指定建设置值 Set key value

1.2    get 获取指定建的值 get key

1.3    mset 为多个字符串设置对应的值 a 111 b 222 c 333

1.4    Mget获取多个字符串对应的值 get a b c

1.5    getset 获取指定字符串旧值并设置新值

1         127.0.0.1:6379> getset a 888

2         "111"

3         127.0.0.1:6379> get a

4         "888"

1.6    keys * 获取所有的key

1.7    Dump 返回序列化的键

127.0.0.1:6379> dump a

"\x00\xc0o\t\x00\x1f<t\x0e\xeb'\x9cE"

1.8    exists判断建是否存在

127.0.0.1:6379> exists a

(integer) 1

127.0.0.1:6379> exists f

(integer) 0

1.9    type返回键的类型

127.0.0.1:6379> type a

String

1.10RENAME重命名键

127.0.0.1:6379> RENAME a A

OK

127.0.0.1:6379> get a

(nil)

127.0.0.1:6379> get A

"111"

1.11expire设置键的到期时间

127.0.0.1:6379> expire A 60

(integer) 1

1.12TTL查看到期时间

127.0.0.1:6379> TTL A

(integer) 37

127.0.0.1:6379> TTL A

(integer) 12

127.0.0.1:6379> TTL A

(integer) 1

127.0.0.1:6379> TTL A

(integer) -2

1.13Persist 移除到期时间

127.0.0.1:6379> expire b 180

(integer) 1

127.0.0.1:6379> TTL b

(integer) 171

127.0.0.1:6379> persist b

(integer) 1

127.0.0.1:6379> TTL b

(integer) -1

1.14Del 移除键

127.0.0.1:6379> keys *

1) "c"

2) "b"

127.0.0.1:6379> del b

(integer) 1

127.0.0.1:6379> keys *

1) "c"

1.15getrange以字符串下标获取字符串指定长度的值

127.0.0.1:6379> getrange a 0 1

"88"

1.16append追加值

127.0.0.1:6379> append a 999

(integer) 6

2    List列表常用命令

2.1      rpush从列表右侧添加值

127.0.0.1:6379> rpush fruit orange

(integer) 1

2.2      lrange从列表获指定长度的值

127.0.0.1:6379> lrange fruit 0 -1

1) "orange"

2.3      rpush从列表右侧添加值

127.0.0.1:6379> rpush fruit apple

(integer) 2

127.0.0.1:6379> rpush fruit banner

(integer) 3

127.0.0.1:6379> rpush fruit berry

(integer) 4

127.0.0.1:6379> rpush fruit guava

(integer) 5

2.4      rpop移除最右边的值

127.0.0.1:6379> rpop fruit

"guava"

127.0.0.1:6379> lrange fruit 0 -1

1) "orange"

2) "apple"

3) "banner"

4) "berry"

3   Sets集合常用操作命令

3.1      Sadd将一个或多个元素加到集合

127.0.0.1:6379> sadd set001 s1

(integer) 1

127.0.0.1:6379> sadd set001 s5 s6 s7

(integer) 3

3.2      scard查看集合长度

127.0.0.1:6379> scard set001

(integer) 7

3.3      Smembers获取集合所有元素

127.0.0.1:6379> smembers set001

1) "s4"

2) "s3"

3) "s1"

4) "s2"

5) "s6"

6) "s5"

7) "s7"

3.4      sismember判断一个值是否在集合中

127.0.0.1:6379> sismember set001 s1

(integer) 1

127.0.0.1:6379> sismember set001 s8

(integer) 0

3.5      srem移除一个或多个

127.0.0.1:6379> srem set001 s1 s2

(integer) 2

3.6      smove将元素重一个集合 移动到另一个集合

127.0.0.1:6379> smove set001 set002 s7

(integer) 1

127.0.0.1:6379> smembers set002

1) "s001"

2) "s7"

4    hash散列常用操作命令

4.1      hset为散列设置值

127.0.0.1:6379> hset hash001 name zhangsan

(integer) 1

127.0.0.1:6379> hset hash001 age 28 class 3

(integer) 2

4.2      Hget获取指定键的值

127.0.0.1:6379> hget hash001 name

"zhangsan"

4.3      Hmget获取多个键的值

127.0.0.1:6379> hmget hash001 name age class

1) "zhangsan"

2) "28"

3) "3"

4.4      hgetall获取所有键值

127.0.0.1:6379> hgetall hash001

1) "name"

2) "zhangsan"

3) "age"

4) "28"

5) "class"

6) "3"

4.5      hkeys获取所有键

127.0.0.1:6379> hkeys hash001

1) "name"

2) "age"

3) "class"

4.6      hvals获取所有值

127.0.0.1:6379> hvals hash001

1) "zhangsan"

2) "28"

3) "3"

4.7      hdel删除指定建值

127.0.0.1:6379> hdel hash001 name

(integer) 1

5  Sorted Sets有序集合

5.1      ZADD 为有序集合添加一个或多个键值

127.0.0.1:6379> zadd class 1 zhangsan 2 lisi 3 wangwu

(integer) 3

5.2      zcard获取集合中元素的个数

127.0.0.1:6379> zcard class

(integer) 3

5.3      Zrange指定下标内的元素

127.0.0.1:6379> zrange class 1 2

1) "lisi"

2) "wangwu"

5.4      zrem移除指定元素

127.0.0.1:6379> zrem class zhangsan

(integer) 1

redis 入门使用的更多相关文章

  1. 安装redis入门

    redis官网:redis.io redis版本用的是redis-3.2.2 $ wget http://download.redis.io/releases/redis-3.2.2.tar.gz $ ...

  2. redis入门笔记(2)

    redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...

  3. redis入门笔记(1)

    redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...

  4. Redis入门指南

    随着互联网业务对性能需求日益强烈,作为Key/Value存储的Redis具有数据类型丰富和性能表现优异的特点.如果能够熟练地驾驭它,不管是把它用做缓存还是存储,对很多大型应用都很多帮助.新浪作为世界上 ...

  5. Redis入门教程:特性及数据类型的操作

    虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...

  6. 【原】Redis入门教程

    最近在学习Redis,写几篇文章记录一下学习过程:Redis入门教程. 1.Redis基本概念 Redis Redis Keys Redis 基本数据类型 Redis基本操作 遍历操作 Pub-Sub ...

  7. windows下使用redis,Redis入门使用,Redis基础命令

    windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...

  8. Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)

    Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式) 原文地址:http://alanland.iteye.com/admin/blogs/1600685(欢迎转载 ...

  9. redis入门(15)redis的数据备份和恢复

    redis入门(15)redis的数据备份和恢复

  10. redis入门(14)redis集群下的数据分区存储

    redis入门(10)redis集群下的数据分区存储

随机推荐

  1. CF1469D Ceil Divisions 题解

    Content 你有一个长度为 \(n\) 的数组 \(a\),初始时,\(\forall i\in[1,n]\),\(a_i=i\). 每次操作选择两个数 \(x,y(1\leqslant x,y\ ...

  2. js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到

    js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到 2.图2的内容为directionkey.js的内容

  3. [源码解析] PyTorch 分布式之弹性训练(2)---启动&单节点流程

    [源码解析] PyTorch 分布式之弹性训练(2)---启动&单节点流程 目录 [源码解析] PyTorch 分布式之弹性训练(2)---启动&单节点流程 0x00 摘要 0x01 ...

  4. ACwing895. 最长上升子序列

    题目: 给定一个长度为N的数列,求数值严格单调递增的子序列的长度最长是多少. 输入格式: 第一行包含整数N. 第二行包含N个整数,表示完整序列. 输出格式: 输出一个整数,表示最大长度. 数据范围: ...

  5. .NET 多条件动态参数查询方法 - SqlSugar ORM

    1.简单多条件多动参数 创建数据库对象 //创建数据库对象 SqlSugarClient SqlSugarClient db = new SqlSugarClient(new ConnectionCo ...

  6. 基于 SoC 的卷积神经网络车牌识别系统设计(1)概述

    NOTES: 这是第三届全国大学生集成电路创新创业大赛 - Arm 杯 - 片上系统设计挑战赛(本人指导的一个比赛).主要划分为以下的 Top5 重点.难点.亮点.热点以及创新点:1.通过 Arm C ...

  7. C语言获取字符年月日时分秒毫秒

    概述 本文演示环境: Windows10 使用C语言获取年月日时分秒毫秒, 代码 #include <iostream> #include <string> #include ...

  8. 1281 - New Traffic System

    1281 - New Traffic System   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 ...

  9. Spring MVC 文件上传、Restful、表单校验框架

    目录 文件上传 Restful Restful 简介 Rest 行为常用约定方式 Restful开发入门 表单校验框架 表单校验框架介绍 快速入门 多规则校验 嵌套校验 分组校验 综合案例 实用校验范 ...

  10. 【Java例题】4.2 级数求和2

    2. 计算级数之和: y=1/1!*x-1/3!*x^3+1/5!*x^5+...+ (-1)^n/(2n+1)!*x^(2n+1). 这里的"^"表示乘方,"!&quo ...