Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Redis入门手记

Redis入门手记

作者头像
暖月寒星
发布于 2020-03-10 01:01:51
发布于 2020-03-10 01:01:51
44000
代码可运行
举报
文章被收录于专栏:浅枫沐雪浅枫沐雪
运行总次数:0
代码可运行

建立一个名为bar的键

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> set bar 1
OK
# 获取Redis中所有的键,keys命令需要遍历Redis中所有的键。当键的数量过多时,不建议使用。
127.0.0.1:6379> KEYS *
1) "bar"

判断键是否存在(如果键存在返回整数1,否则返回整数0)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> exists bar
(integer) 1
127.0.0.1:6379> exists note
(integer) 0

删除键

  • 语法:del key [key ...]
  • 返回值:删除的键的个数(整数)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> del bar
(integer) 1
127.0.0.1:6379> del bar
(integer) 0

获取键的类型

  • 语法:type key
  • 结果:string hash(散列类型) list(列表) set(集合类型) zset(有序集合类型) 等
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> set allms 1
OK
127.0.0.1:6379> type allms
string
# 键的赋值
- 语法:set key value
127.0.0.1:6379> set a hello
OK
# 键的取值
- 语法:get key
- 返回:key对应的值 键不存在时返回空
127.0.0.1:6379> get a
"hello"
127.0.0.1:6379> get b
(nil)

递增数字+1

  • 语法:incr key
  • 作用:让当前的key的键值递增,返回递增后的值
  • 注意:当键值不是整数时,Redis会返回错误
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> incr num
(integer) 1   因为num键是不存在的,所有默认的键值为0,递增后的键值为1
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> incr num
(integer) 3
127.0.0.1:6379> set info test
OK
127.0.0.1:6379> get info
"test"
127.0.0.1:6379> incr info
(error) ERR value is not an integer or out of range

增加指定的整数

  • 语法:incrby key increment
  • 解释:increment为递增量,返回key递增后的值
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> set num 100
OK
127.0.0.1:6379> get num
"100"
127.0.0.1:6379> incrby num 200
(integer) 300
127.0.0.1:6379> get num
"300"

递减数字-1

  • 语法:decr key
  • 解释:key的值对应减1,返回递减后的值
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> get num
"300"
127.0.0.1:6379> decr num
(integer) 299
127.0.0.1:6379> decr num
(integer) 298
127.0.0.1:6379> get num
"298"

递减指定的整数

  • 语法:decrby key increment
  • 解释:increment为递减量,返回key递减后的值
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> get num
"298"
127.0.0.1:6379> decrby num 100
(integer) 198
127.0.0.1:6379> get num
"198"

增加指定的浮点数

  • 语法:incrbyfloat key increment
  • 解释:increment为需要增加的浮点数,返回增加后的字符串长度
  • 特点:可以递增一个双精度的浮点数
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> set num 1.0
OK
127.0.0.1:6379> get num
"1.0"
127.0.0.1:6379> incrbyfloat num 9.9
"10.9"
127.0.0.1:6379> get num
"10.9"
127.0.0.1:6379> incrbyfloat num 5E+4 #递增一个双精度的浮点数 5x10^4
"50010.900000000001"

在字符串键值后面追加值

  • 语法:append key value
  • 返回:增加后字符串的长度
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> set allms hello
OK
127.0.0.1:6379> append allms " world!"  # 此处有一个空格,故加了一个双引号,默认可不加
(integer) 12
127.0.0.1:6379> get allms
"hello world!"

获取键值字符串的长度

  • 语法:strlen key
  • 返回:字符串的长度,为Integer型
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> strlen allms
(integer) 12

同时获取多个键的值

  • 语法:mget key [key...]
  • 返回:对应key的键值
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> keys *
1) "qfmx"
2) "num"
3) "allms"
127.0.0.1:6379> mget qfmx num allms
1) "data"
2) "50010.900000000001"
3) "hello world!"

同时设置多个键与值

  • 语法:mset key1 value1 key2 value2 ...
  • 返回: OK
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
127.0.0.1:6379> mset test1 data1 test2 data2 test3 data3
OK
127.0.0.1:6379> mget test1 test2 test3
1) "data1"
2) "data2"
3) "data3"

字符串的位操作(后续会单独补全)


散列类型

  • 解释:散列类型(hash)的键值是一种字典类型的结构,其储存了字段(field)和**字段的映射,但是字段值只能是字符串,不支持其他数据类型,也就说散列类型不能够嵌套其他类型,一个散列类型的键之多包含2^32 - 1个字段
  • 特点:散列类型适合储存对象 关系数据库中存储汽车表的结构

ID

color

name

price

1

黑色

宝马

100万

2

白色

奔驰

80万

3

红色

奥迪

99万

redis的散列类型的汽车对象ID为2的汽车信息的存储结构

字段

字段值

Car:2

color

白色

name

奔驰

price

80万

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-04-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
3.Redis常用命令:String
字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。 1、SET key value  此命令用于在指定键设置值 redis 127.0.0.1:6379> set name tom OK redis 127.0.0.1:6379> get name "tom" 2、GET key 用于获取指定键的值 redis 127.0.0
陈树义
2018/04/13
6670
Redis基础
redis 是一个非关系型数据库(区别于mysql关系型数据库,关联关系,外键,表),nosql数据库(not only sql:不仅仅是SQL),数据完全内存存储(速度非常快),存数据的形式是key value的形式,
HammerZe
2022/05/09
7030
Redis基础
Redis 学习笔记 3.2 字符串类型
字符串类型是 Redis 中其他4种数据类型的基础,其他数据类型只是组织字符串的形式不同。例如: 列表类型是以列表的形式来组织字符串; 集合类型是以集合的形式来组织字符串。
twowinter
2020/04/17
3190
redis事务
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
小土豆Yuki
2020/06/15
6120
Redis 系列(2) —— Redis 的字符串
设置 Redis 值的命令格式为 set key value [ex seconds | px milliseconds | keepttl] [nx|xx]
求和小熊猫
2021/09/10
4010
Redis-1.Redis数据结构
自增自减命令 自增自减命令只能作用于整数,如果对不存在的键或者保存了空串的键执行自增/自减操作,那么会将这个键的值当作0处理,如果对无法解释为整数或者浮点数的字符串值性自增/自减操作,把额会返回一个错误。
悠扬前奏
2019/05/30
7740
C# CsRedis的初探(二)-- Redis常用命令整理(基本篇)
Redis常用命令基本篇 keys 命令 ? 匹配一个字符 KEYS h?llo 匹配 hello , hallo 和 hxllo 等。
Vaccae
2019/07/24
2.6K0
Redis 从入门到起飞(上)
1. Redis 介绍1.1 NoSQL 基本概念1.2 NoSQL 分类1.3 Redis 基本概念1.4 发展历史1.5 应用场景2. Redis 安装2.1 下载2.2 安装2.3 redis 启动3. Redis 客户端3.1 自带客户端3.2 图形界面客户端3.3 jedis 客户端4. 数据类型4.1 String 类型4.2 Hash 散列类型4.3 List 类型4.4 Set 类型4.5 Sortedset 类型
芋道源码
2018/12/12
1.2K0
Redis 从入门到起飞(上)
redis数据类型详解(redis数据类型及常用方法)
Redis作为一种key/value结构的数据存储系统,为了便于对数据进行进行管理,提供了多种数据类型。然后,基于指定类型存储我们项目中产生的数据,例如用户的登陆信息,购物车信息,商品详情信息等等。
全栈程序员站长
2022/07/25
8350
【Redis实战】字符串类型(String)
  set和get是Redis中最简单的两个命令,它们实现的功能和编程语言中的读写变量相似,如key=“hello”在redis中是这样表示的。
程序员云帆哥
2022/05/12
2800
Redis | Redis 字符串相关命令
Redis 支持多种数据结构,比如 字符串、列表、集合、有序集合 和 哈希 等数据结构。本次我整理了关于 字符串 相关的命令,也就是关于 Strings 相关的命令,如下图。
码农UP2U
2020/08/26
4020
Redis | Redis 字符串相关命令
redis字符串类型详解及应用场景分析
常用命令 设置值 set key value [ex seconds] [px milliseconds] [nx|xx] 选项说明: ex seconds 设置秒级过期时间 px milliseconds 设置毫秒级过期时间 nx 键不存在时才设置成功,用于添加 xx 键存在时才设置成功,用于更新 除了set选项,redis还提供了setnx,作用与nx选项相同 127.0.0.1:6379> exists hello (integer) 0 127.0.0.1:6379> set hell
章鱼喵
2018/06/27
5030
2024 RedisAnd Mysql基础与进阶操作系列(15-1)作者——LJS[你个小黑子这都还学不会嘛?你是真爱粉嘛?真是的 ~;以后请别侮辱我家鸽鸽]
Redis数据类型之string类型及操作 1.string 类型及操作 简介
盛透侧视攻城狮
2024/10/22
1340
实例讲解redis字符串类型
字符串类型简介 字符串类型是Redis中最基本的数据类型,能存储任何形式的字符串 字符串类型 相关命令 命令 行为 GET key 获取值 SET key value 设置值 DEL key 删除值(
章鱼喵
2018/06/27
6640
深入剖析Redis系列:Redis数据结构之字符串
字符串类型 是 Redis 最基础的数据结构。字符串类型 的值实际可以是 字符串(简单 和 复杂 的字符串,例如 JSON、XML)、数字(整数、浮点数),甚至是 二进制(图片、音频、视频),但是值最大不能超过 512MB。
用户5546570
2019/06/06
4130
深入剖析Redis系列:Redis数据结构之字符串
Redis 常用操作命令,非常详细!
nx:如果key不存在则建立,xx:如果key存在则修改其值,也可以直接使用setnx/setex命令。
Java技术栈
2018/11/30
3.1K0
day67_Redis学习笔记_02
4、Redis的数据类型 Redis中存储数据是通过key-value存储的,对于value的类型有以下几种:   字符串   Hash类型   List   Set   SortedSet(zset) PS: 在redis中的命令语句中,命令是忽略大小写的,而key是不忽略大小写的。 4.1、String类型 4.1.1、命令学习 (1)赋值 语法:     SET key value 示例:     127.0.0.1:6379> set test 123     OK (2)取值 语法:   
黑泽君
2018/12/06
5260
day67_Redis学习笔记_02
Redis 字符串(Strings) 复习
字符串是Redis最简单的储存类型,它存储的值可以是字符串、整数或者浮点数,对整个字符串或者字符串的其中一部分执行操作;对整数或者浮点数执行自增(increment)或者自减(decrement)操作。
陈大剩博客
2023/03/06
4230
Redis 字符串(Strings) 复习
【Redis篇】String类型命令详讲以及它的使用场景
Redis的基本使用命令(GET,SET,KEYS,EXISTS,DEL,EXPIRE,TTL,TYPE)_php redis get exists-CSDN博客
用户11369558
2024/12/24
2440
【Redis篇】String类型命令详讲以及它的使用场景
Redis学习笔记(字符串类型)
3.递增数字,当要操作的键不存在时会默认键值为0,所以第一次递增后的结果是1。当键值不是整数时Redis会提示错误
编程随想曲
2022/04/21
2620
相关推荐
3.Redis常用命令:String
更多 >
LV.1
Java开发工程师
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档