一、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. .NET Core基础篇之:白话管道中间件

    在.Net Core中,管道往往伴随着请求一起出现.客户端发起Http请求,服务端去响应这个请求,之间的过程都在管道内进行. 举一个生活中比较常见的例子:旅游景区. 我们都知道,有些景区大门离景区很远 ...

  2. java 图形化工具Swing 基本使用

    Swing介绍: 使用Swing开发图形界面比AWT更加优秀,因为Swing是一种轻量级组件,它采用100% Java实现,不再依赖于本地平台的图形界面,所以可以在所有平台上保持相同的运行效果,对跨平 ...

  3. 第一周python学习总结

    多行注释:格式化输出内容,用{}传递变量内容 执行输出 while: for XXX: if: range(satar,end,步长) break continue input 等于python2里面 ...

  4. More Effective C++ 基础议题(条款1-4)总结

    More Effective C++ 基础议题(条款1-4)总结 条款1:仔细区别pointers和references 如果有一个变量,其目的是用来指向(代表)另一个对象,但是也有可能它不指向(代表 ...

  5. JS验证身份证是否符合规则

    调用isIdCardNo(num)  验证通过返回true 错误返回false function isIdCardNo(num) { var factorArr = new Array(7, 9, 1 ...

  6. 【LeetCode】987. Vertical Order Traversal of a Binary Tree 解题报告(C++ & Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS BFS 日期 题目地址:https://le ...

  7. 【LeetCode】950. Reveal Cards In Increasing Order 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 模拟 日期 题目地址:https://leetcod ...

  8. 【LeetCode】539. Minimum Time Difference 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.me/ 题目地址:https://leetcode.com/problems/minimum-t ...

  9. 1142 - Summing up Powers (II)

    1142 - Summing up Powers (II)    PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit ...

  10. Codeforces 189A:Cut Ribbon(完全背包,DP)

    time limit per test : 1 second memory limit per test : 256 megabytes input : standard input output : ...