redis学习教程二《四大数据类型》
redis学习教程二《四大数据类型》
四大数据类型包括:字符串 哈希 列表 集合
一 : Redis字符串
Redis字符串命令用于管理Redis中的字符串值。以下是使用Redis字符串命令的语法。
1 redis 127.0.0.1:6379> COMMAND KEY_NAME
2 //Shell
示例
1 redis 127.0.0.1:6379> SET mykey "redis"
2 OK 操作状态
3 redis 127.0.0.1:6379> GET mykey "redis"
4
5 //Shell
在上面的例子中,SET和GET是redis中的命令,而mykey是键的名称。
Redis字符串命令
下表列出了一些用于在Redis中管理字符串的基本命令。
| 编号 | 命令 | 描述说明 |
|---|---|---|
| 1 | SET key value | 此命令设置指定键的值。 |
| 2 | GET key | 获取指定键的值。 |
| 3 | GETRANGE key start end | 获取存储在键上的字符串的子字符串。 |
| 4 | GETSET key value | 设置键的字符串值并返回其旧值。 |
| 5 | GETBIT key offset | 返回在键处存储的字符串值中偏移处的位值。 |
| 6 | MGET key1 [key2..] | 获取所有给定键的值 |
| 7 | SETBIT key offset value | 存储在键上的字符串值中设置或清除偏移处的位 |
| 8 | SETEX key seconds value | 使用键和到期时间来设置值 |
| 9 | SETNX key value | 设置键的值,仅当键不存在时 |
| 10 | SETRANGE key offset value | 在指定偏移处开始的键处覆盖字符串的一部分 |
| 11 | STRLEN key | 获取存储在键中的值的长度 |
| 12 | MSET key value [key value …] | 为多个键分别设置它们的值 |
| 13 | MSETNX key value [key value …] | 为多个键分别设置它们的值,仅当键不存在时 |
| 14 | PSETEX key milliseconds value | 设置键的值和到期时间(以毫秒为单位) |
| 15 | INCR key | 将键的整数值增加1 |
| 16 | INCRBY key increment | 将键的整数值按给定的数值增加 |
| 17 | INCRBYFLOAT key increment | 将键的浮点值按给定的数值增加 |
| 18 | DECR key | 将键的整数值减1 |
| 19 | DECRBY key decrement | 按给定数值减少键的整数值 |
| 20 | APPEND key value | 将指定值附加到键 |
二: Redis哈希
Redis Hashes是字符串字段和字符串值之间的映射(类似于PHP中的数组类型)。 因此,它们是表示对象的完美数据类型。
在Redis中,每个哈希(散列)可以存储多达4亿个键-值对。
示例
1 redis 127.0.0.1:6379> HMSET myhash name "redis tutorial" description "redis basic commands for caching")
在上面的例子中,在名称为’
查看:HGETALL myhashmyhash‘的哈希中设置了Redis教程的详细信息(名称(name),描述(description ))。
三:Redis列表
Redis列表只是字符串列表,按插入顺序排序。可以在列表的头部或尾部添加Redis列表中的元素。
列表的最大长度为2^32 - 1个元素(即4294967295,每个列表可存储超过40亿个元素)。
示例
1 redis 127.0.0.1:6379> LPUSH mylist "redis"
2 redis 127.0.0.1:6379> LPUSH mylist "redis1"
查看:LRANGE mylist 0 10
在上面的示例中,通过命令LPUSH将两个值插入到名称为“mylist”的Redis列表中。
四:Redis集合
Redis集合是唯一字符串的无序集合。 唯一值表示集合中不允许键中有重复的数据。
在Redis中设置添加,删除和测试成员的存在(恒定时间O(1),而不考虑集合中包含的元素数量)。列表的最大长度为2^32 - 1个元素(即4294967295,每组集合超过40亿个元素)。
示例
1 redis 127.0.0.1:6379> SADD myset "redis"
2 redis 127.0.0.1:6379> SADD myset "mongodb"
3 redis 127.0.0.1:6379> SADD myset "mysql"
查看:SMEMBERS "myset"
在上面的示例中,通过命令SADD将三个值插入到名称为“myset”的Redis集合中。
redis学习教程二《四大数据类型》的更多相关文章
- redis学习教程五《管道、分区》
redis学习教程五<管道.分区> 一:管道 Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻 ...
- redis学习教程四《管理、备份、客户端连接》
redis学习教程四<管理.备份.客户端连接> 一:Redis服务器命令 Redis服务器命令 下表列出了与Redis服务器相关的一些基本命令. 序号 命令 说明 1 BGREWRITE ...
- redis学习教程三《发送订阅、事务、连接》
redis学习教程三<发送订阅.事务.连接> 一:发送订阅 Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息.Redi ...
- Redis学习笔记二 (BitMap算法分析与BitCount语法)
Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...
- Typescript 学习笔记二:数据类型
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- redis 学习(二)-- 通用命令
redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历 ...
- Redis学习之二 数据类型和相关命令
原文:https://www.cnblogs.com/lonelyxmas/p/9073928.html 如果还不懂安装的,请看 Windows环境下安装Redis Redis一共支持五种数据类型 1 ...
- redis学习之二from github
大概敲了一遍基本命令,熟悉了redis的存储方式.现在开始进一步系统的学习.学习教程目前计划有三个,一个是github上的https://github.com/JasonLai256/the-litt ...
- Redis学习系列二之.Net开发环境搭建及基础数据结构String字符串
一.简介 Redis有5种基本数据结构,分别是string.list(列表).hash(字典).set(集合).zset(有序集合),这是必须掌握的5种基本数据结构.注意Redis作为一个键值对缓存系 ...
随机推荐
- CSS系列 (05):浮动详解
浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止.由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样. -- W3C 文字环绕 float可以 ...
- spark知识点_RDD
来自官网的Spark Programming Guide,包括个人理解的东西. 这里有一个疑惑点,pyspark是否支持Python内置函数(list.tuple.dictionary相关操作)?思考 ...
- SpringMVC文件的上传与下载实现
单文件上传 首先创建项目,开发工具是IDEA,选择Spring项目,勾选上Spring和SpringMVC. 然后命名,最后完成. 默认生成配置文件在web/WEB-INF下. 首先导入需要的jar包 ...
- 9. 细节见真章,Formatter注册中心的设计很讨巧
目录 本文提纲 版本约定 你好,我是A哥(YourBatman). Spring设计了org.springframework.format.Formatter格式化器接口抽象,对格式化器进行了大一统, ...
- Selenium WebDriver 8大定位方式
Selenium WebDriver 8大定位方式: driver.find_element_by_id() driver.find_element_by_name() driver.find_ele ...
- 【Linux】rsync的相关用途
Rsync,代表"remote sync",它是本地和远程主机文件同步工具.它只同步更改的文件,以此实现最小化传输数据. 我使用Ubuntu 16.04做为例子,但是你可以把它应用 ...
- Leetcode53. 最大子序列和
问题 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 代码 贪心算法 核心思想就是检查之前 i-1 的元素和,如果小于零就舍弃--对应下面第六行 ...
- Spring集成GuavaCache实现本地缓存
Spring集成GuavaCache实现本地缓存: 一.SimpleCacheManager集成GuavaCache 1 package com.bwdz.sp.comm.util.test; 2 3 ...
- 消息队列之kafka
消息队列之activeMQ 消息队列之RabbitMQ 1.kafka介绍 kafka是由scala语言开发的一个多分区,多副本的并且居于zookeeper协调的分布式的发布-订阅消息系统.具有高吞吐 ...
- JDK的各个版本
Java的各个版本 从上图我们看出,Java的版本名最开始以JDK开头,后来以j2se开头,最后到现在以Java开头,所以这些名字我们都可以说,但人们说的更多的是JDK多少,或者Java多少