redis 入门使用
一、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 入门使用的更多相关文章
- 安装redis入门
redis官网:redis.io redis版本用的是redis-3.2.2 $ wget http://download.redis.io/releases/redis-3.2.2.tar.gz $ ...
- redis入门笔记(2)
redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...
- redis入门笔记(1)
redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...
- Redis入门指南
随着互联网业务对性能需求日益强烈,作为Key/Value存储的Redis具有数据类型丰富和性能表现优异的特点.如果能够熟练地驾驭它,不管是把它用做缓存还是存储,对很多大型应用都很多帮助.新浪作为世界上 ...
- Redis入门教程:特性及数据类型的操作
虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...
- 【原】Redis入门教程
最近在学习Redis,写几篇文章记录一下学习过程:Redis入门教程. 1.Redis基本概念 Redis Redis Keys Redis 基本数据类型 Redis基本操作 遍历操作 Pub-Sub ...
- windows下使用redis,Redis入门使用,Redis基础命令
windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...
- Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)
Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式) 原文地址:http://alanland.iteye.com/admin/blogs/1600685(欢迎转载 ...
- redis入门(15)redis的数据备份和恢复
redis入门(15)redis的数据备份和恢复
- redis入门(14)redis集群下的数据分区存储
redis入门(10)redis集群下的数据分区存储
随机推荐
- 什么是网络图(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 名词解释:网络图-- 咦?书里没写? 看来张同学也不喜欢名词解释(猜的)哈哈哈-- 但是! 人家写了两种网络图:双代号网络 ...
- C++ happens-before 关系是不可传递的
P0668R4 对此进行了解释 The definition of plain happens-before became unpleasantly complicated with the intr ...
- THUSC 2021 游记
想了想不往博客园放不行,还是放上来了. 原文 \[\texttt{Brief Introduction} \] 众所周知,THUSC2021 5 月 15-16 日在杭州市 XJ 中学举办,然而由于 ...
- LuoguB2034 计算 2 的幂 题解
Content 给定整数 \(n\),求 \(2^n\). 数据范围:\(0\leqslant n<31\). Solution 第一种各位都能想得到的,直接循环 \(n\) 次,往答案里面乘以 ...
- JAVA运行报错 [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
执行 String[] rwords = (String[]) list.toArray(); 报错[Ljava.lang.Object; cannot be cast to [Ljava.lang. ...
- qt5之设置无边窗口移动
Note qt version: 5.12 qt creator: 4.13 本文将介绍 设置无边窗口和设置窗口的移动 你要知道: QDialog 和 QMainWindow都是 QWidget的派生 ...
- 【LeetCode】1472. 设计浏览器历史记录 Design Browser History (Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 模拟法 日期 题目地址:https://leetcod ...
- 【LeetCode】632. Smallest Range 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/smallest ...
- 【LeetCode】95. Unique Binary Search Trees II 解题报告(Python)
[LeetCode]95. Unique Binary Search Trees II 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzh ...
- Are Loss Functions All the Same?
目录 概 主要内容 一些假设 损失函数 损失函数的统计性质 收敛速度 分类的界 Rosasco L, De Vito E, Caponnetto A, et al. Are loss function ...