上一篇我们进行了redis的简单的介绍,并进行了安装、启动、停止、登录 等操作。下面我们进一步学习redis
支持的数据类型中的string和hash。
string就不多解释了,存储在redis中的键值对。
下面直接上代码:
[redies@localhost redis-2.4]$ redis-cli //用自带的客户端工具连接redis数据库 redis 127.0.0.1:6379> set name xiaobaiyang //set方法设置数据 set 键 值 OK //返回OK redis 127.0.0.1:6379> get name //get 获取值 get 键 "xiaobaiyang" //返回值 redis 127.0.0.1:6379> setnx name xiaobaiyang1 //setnx 表示键不存在时才设置 (integer) 0 //因为name存在所以失败即返回0 redis 127.0.0.1:6379> get name "xiaobaiyang" //设置失败 所以name的值不变 redis 127.0.0.1:6379> setex age 10 red //setex 设置有效时间 10s OK redis 127.0.0.1:6379> get age "red" redis 127.0.0.1:6379> get age //10s后age为空了 (nil) redis 127.0.0.1:6379> setnx age 20 //可以再次设置,因为age已经自己消失了 (integer) 1 redis 127.0.0.1:6379> get age "20" redis 127.0.0.1:6379> set mail xuelianbochao@163.com OK redis 127.0.0.1:6379> setrange mail 6 bbbb//setrange会替换指定位置与目的串一样大的位置 (integer) 21 redis 127.0.0.1:6379> get mail "xueliabbbbhao@163.com" redis 127.0.0.1:6379> mset key1 1 key2 2 key3 3 //mset 多个键进行同时赋值 OK redis 127.0.0.1:6379> get key1 "1" redis 127.0.0.1:6379> get ke2 (nil) redis 127.0.0.1:6379> get key2 "2" redis 127.0.0.1:6379> get key3 "3" redis 127.0.0.1:6379> msetnx key4 4 //多个赋值 与setnx类似 (integer) 1 redis 127.0.0.1:6379> msetnx key4 key5 (integer) 0 redis 127.0.0.1:6379> msetnx key5 5 ket 6 (integer) 1 redis 127.0.0.1:6379> get ket "6" redis 127.0.0.1:6379> getset key5 55 //获得旧值set新值 "5" redis 127.0.0.1:6379> getrange key5 01 //截取部分字符串 (error) ERR wrong number of arguments for 'getrange' command redis 127.0.0.1:6379> getrange name 0 6 "xiaobai" redis 127.0.0.1:6379> mget key1 key2 key3 //批量获取键值 1) "1" 2) "2" 3) "3" redis 127.0.0.1:6379> incr age //自增 (integer) 21 redis 127.0.0.1:6379> incrby age 10 //自增设置步长 (integer) 31 redis 127.0.0.1:6379> incrby age -10 (integer) 21 redis 127.0.0.1:6379> decr age 10 (error) ERR wrong number of arguments for 'decr' command redis 127.0.0.1:6379> decr age //自减 (integer) 20 redis 127.0.0.1:6379> decrby age (error) ERR wrong number of arguments for 'decrby' command redis 127.0.0.1:6379> decrby age 1 //自减设置步长 (integer) 19 redis 127.0.0.1:6379> append name ... //追加 在name后面追加.... (integer) 14 redis 127.0.0.1:6379> get name "xiaobaiyang..." redis 127.0.0.1:6379> strlen name //获得字符串的长度 (integer) 14 redis 127.0.0.1:6379> del name //删除键值 (integer) 1 redis 127.0.0.1:6379> redis 127.0.0.1:6379> get name (nil) redis 127.0.0.1:6379> ============================下面是hash================= ##hash类型类似新建一个字符串表格,表格里面放着键不重复的数据,类似Map<map> redis 127.0.0.1:6379> hset myhash1 name xiaobaiyang //hset 哈希名 键 值 (integer) 1 //返回结果 redis 127.0.0.1:6379> hset myhash1 mai xxxx@aa.com (integer) 1 redis 127.0.0.1:6379> hget myhash1 name //获取值 hget 哈希名 键 "xiaobaiyang" redis 127.0.0.1:6379> hmset myhash1 key1 1 key2 2 //一次设置多个值 OK redis 127.0.0.1:6379> hmget myhash1 name mai key1 key2 //一次获得多个值 1) "xiaobaiyang" 2) "xxxx@aa.com" 3) "1" 4) "2" redis 127.0.0.1:6379> hsetnx myhash1 name xxxx //类似setnx (integer) 0 redis 127.0.0.1:6379> hget myhash1 name "xiaobaiyang" redis 127.0.0.1:6379> hsetnx myhash1 key3 3 (integer) 1 redis 127.0.0.1:6379> hget myhash1 key3 "3" redis 127.0.0.1:6379> hset myhash1 age 11 (integer) 1 redis 127.0.0.1:6379> hincr myhash1 age //无该方法 (error) ERR unknown command 'hincr' redis 127.0.0.1:6379> hincrby myhash1 age (error) ERR wrong number of arguments for 'hincrby' command redis 127.0.0.1:6379> hincrby myhash1 age 2 //有这个方法 (integer) 13 redis 127.0.0.1:6379> hexists myhash1 age //看看是否存在该属性 (integer) 1 redis 127.0.0.1:6379> hexists myhash1 age1 (integer) 0 redis 127.0.0.1:6379> hlen myhash1 //哈希里面键的数量 (integer) 6 redis 127.0.0.1:6379> hdel myhsh1 //无法直接删除整个表 (error) ERR wrong number of arguments for 'hdel' command redis 127.0.0.1:6379> hdel myhash1 age1 //删除哈希里面的属性 (integer) 0 redis 127.0.0.1:6379> hexists myhash1 age (integer) 1 redis 127.0.0.1:6379> hkeys myhash1//显示全部keys 1) "name" 2) "mai" 3) "key1" 4) "key2" 5) "key3" 6) "age" redis 127.0.0.1:6379> hvals myhs //显示全部值 (empty list or set) redis 127.0.0.1:6379> hvals myhash1 1) "xiaobaiyang" 2) "xxxx@aa.com" 3) "1" 4) "2" 5) "3" 6) "13" redis 127.0.0.1:6379> hgetall myhash1 //显示key和values 1) "name" 2) "xiaobaiyang" 3) "mai" 4) "xxxx@aa.com" 5) "key1" 6) "1" 7) "key2" 8) "2" 9) "key3" 10) "3" 11) "age" 12) "13" redis 127.0.0.1:6379> quit //退出
相关推荐
Redis笔记整理-五中数据类型之String和Hash,这两种数据类型是我们常用语做缓存,从而减轻数据库的压力,缓存我们一般放到服务成,被多个表现成调用达到公用性
Redis String 类型和 Hash 类型是 Redis 数据库中两种基本的数据结构,它们各自有着独特的特性和应用场景。在本篇学习笔记中,我们将深入探讨这两种类型,了解它们的功能、操作方法以及如何在实际应用中有效利用。 ...
本篇文章将主要聚焦于Redis中的两种基础数据类型——String和Hash,以及它们在数据库管理中的应用。 首先,让我们深入了解String类型。在Redis中,String是最基本的数据类型,可以存储字符串、整数或浮点数。例如,...
String是Redis中最基础的数据类型,它可以存储字符串、整数或浮点数。在Redis中,一个键最多可以存储512MB的值。String类型的操作包括设置、获取、递增、递减、追加等,这使得它非常适合用于计数器、简单的缓存场景...
本系列将和大家分享Redis分布式缓存,本章主要简单介绍下Redis中的String类型,以及如何使用Redis解决订单秒杀超卖问题。 Redis中5种数据结构之String类型:key-value的缓存,支持过期,value不超过512M。 Redis是...
本文将深入探讨如何使用Java来操作Redis,包括设置和获取String、List和Map类型的数据,并且会介绍如何进行封装和单元测试。 首先,要与Redis进行交互,我们需要引入Jedis库,这是Java最常用的Redis客户端。在你的...
Redis学习手册 Hash数据类型 doc Redis学习手册 Key操作命令 doc Redis学习手册 List数据类型 doc Redis学习手册 Set数据类型 doc Redis学习手册 Sorted Sets数据类型 doc Redis学习手册 String数据类型 doc Redis...
本文将详细讲解如何在Spring Boot项目中集成Redis,并解决String类型的乱码问题。 首先,我们需要在项目中引入Redis的相关依赖。在`pom.xml`(如果你使用的是Maven)或`build.gradle`(如果你使用的是Gradle)文件...
其中`sds`(Simple Dynamic String)是Redis自定义的一种动态字符串实现,与C语言的标准字符串相比,它具有以下几个优点: 1. **常数复杂度获取字符串长度**:`sds`结构体中维护了一个额外的变量来记录字符串长度,...
它支持多种数据结构,包括字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。在本篇文章中,我们将深入探讨其中的字符串类型和哈希类型。 ### 字符串类型(String) **1. 基本...
redis的安装与string类型笔记md版
标题中提到的“Redis02 使用Redis数据库(String类型)全面解析”是关于如何在Redis数据库中操作String类型数据的知识点。Redis是一种广泛使用的开源内存数据结构存储系统,可以用作数据库、缓存或消息中间件。Redis...
本文将深入探讨如何使用Java操作Redis的四种主要数据类型:字符串(String)、列表(List)、哈希(Hash)和集合(Set)。 首先,我们来看**字符串类型**(String)。在Redis中,字符串是最基础的数据类型,可以...
String类型使用场景 计数器 例如一篇文章有多少人看过使用 INCR article:readcount:文章id 取值为GET article:readcount:文章id hash类型使用场景 电商的购物车 hset cart:用户id 商品id 商品数量 增加同样商品的...
- **字符串(String)**:最基础的数据类型,支持设置、获取、增加、减少等操作。 - **哈希(Hash)**:用于存储键值对集合,适用于存储对象。 - **列表(List)**:有序的元素集合,支持两端插入和弹出元素。 - **...
String类型是Redis最为基础的类型,功能强大,可以存储任意格式的数据,比如文本、数字,甚至是二进制文件。在C#中,通过使用如ServiceStack.Redis等第三方库,可以非常方便地操作Redis。例如,我们可以使用以下代码...
3)支持多种数据类型,常见的如 string、list、hash、set、zset、bitmaps、hyperloglog、geo 4)应用场景广泛:常作为缓存使用,分布式锁、数据共享等 Redis 支持的数据类型有哪些?1)String(字符类型) 2)Hash...
本文将深入探讨如何使用Java与Redis进行各种类型的操作,并基于Maven项目管理来构建我们的示例代码。 首先,为了在Java项目中使用Redis,我们需要引入Jedis库,这是一个流行的Java Redis客户端。在Maven项目的`pom....
Redis中的String是最基本的数据类型,用于存储单一值。在ServiceStack.Redis中,可以使用`Set`和`Get`方法来设置和获取键值: ```csharp redis.Set("key", "value"); string value = redis.Get("key"); ``` ### ...