目录

一、redis中的常见数据结构

二、redis中字符串(String)介绍

三、常见命令

四、示例

set命令与get命令

setnx

append

strlen

incr

decr

incrby/decrby <步长>

mset ..

mget  ...

msetnx ....

getrange <起始位置> <结束位置>

setrange <起始位置>

setex <过期时间>

getset


一、redis中的常见数据结构

Redis共有5种常见数据结构,分别字符串(STRING)、列表(LIST)、集合(SET)、散列(HASH)、有序集合(ZSET)。

本文这里主要介绍字符串的常见操作

二、redis中字符串(String)介绍

String 是Red设置键值对is最基本的数据类型,和Memcached一样,一个key对应一个value

String 类型是二进制安全的,意味着Redis的String 可以包含任何数据,比如jpg图片,或者序列化的对象

一个Redis中字符串value最多可以是512MB

三、常见命令

命令 描述

set <key> <value>

设置键值对,成功返回1,失败返回0,key值已经存在则覆盖原值

get <key>

根据key返回对应的value

setnx <key> <value>

只有key 不存在时,设置key的值,key值存在则无法设置

append <key> <value>

给指定的key后面追加<value> 并返回总长度

strlen <key>

获取key对应的value的长度

incr <key>

将key中储存则数字值增1,只能对数字值操作,如果为空,新值为1

decr <key>

将key中储存的数字值减1

incrby/decrby <key> <步长>

将key中储存的数字值增减。自定义步长

mset <key><value>..

可以同时设置多组键值对

mget <key>...

可以同时一个或多个key的value值

 msetnx <key1> <value1> <key2><value2>....

同时设置多组键值对

mget  <k1> <k2> ...

可以获取1个或多个键值对
msetnx <key1> <value1> <key2> <value2>.... 同时设置多组键值对,具有原子性
getrange <key> <起始位置> <结束位置> 获取值的范围,类似java中的subString,前包,后包,下标从0开始
 setrange <key> <起始位置> <value>  用value 覆写key中所储存的字符串的值,从起始位置索引覆写

setex <key> <过期时间> <value>

设置键值对的同时,设置过期时间,单位秒

四、示例

set命令与get命令

set ,get根据key获取value

并且set可以覆盖

setnx <key> <value>

只有key 不存在时,设置key的值,key值存在则无法设置,解决set覆盖

这里对k1进行setnx,由于k1存在就返回0表示设置失败,对k2进行setnx,由于k2不存在返回1表示设置成功

append <key> <value>

给指定的key后面追加 并返回总长度

strlen <key>

获取值的长度

incr <key>

将key中储存则数字值增1,只能对数字值操作,如果为空,新值为1

decr <key>

将key中储存的数字值减1

incrby/decrby <key> <步长>

将key中储存的数字值增减。自定义步长

mset <key1><value1> <key1><value2>..

同时设置多组键值对

mget  <k1> <k2> ...

可以获取1个或多个键值对

msetnx <key1> <value1> <key2> <value2>....

同时设置多组键值对,当且仅当所有给定的key都不存在时,才能设置成功

原子性,有一个失败,则都失败

getrange <key> <起始位置> <结束位置>

获取值的范围,类似java中的subString,前包,后包,下标从0开始

setrange <key> <起始位置> <value>

用value 覆写key中所储存的字符串的值,从起始位置索引覆写

setex <key> <过期时间> <value>

设置键值对的同时,设置过期时间,单位秒

这里设置k10的过期时间为10秒

这里的ttl方法是用来查看过期时间的,返回-1代表永不过期,-2代表已经过期,具体该方法信息,以及其他的键值对的常用命令解释在我另一篇博客中有详细介绍 :

redis 中键值对的常用命令 (附有示例)_裴南苇_的博客-CSDN博客

getset <key> <value>

以新值换旧值,并返回旧值

好了,这次的文章就到这里,喜欢的同学可以点赞收藏,遇到问题,可以评论,或者留言,我一定会第一时间给到回馈,感谢观看!!

注:本文为本人学习时心得分享,有讲错或者需要改正的地方,请指正,我会虚心接受

redis中字符串(String)类型常见命令操作 (附有示例)相关推荐

  1. Redis中字符串string数据类型(保存(设置键值、过期时间、设置多个键值、追加值)、获取(获取单一键值、获取多个键值))

    字符串类型是 Redis 中最为基础的数据存储类型,它在 Redis 中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型的V ...

  2. Redis中对ZSet类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  3. zset获取指定score_7、Redis中对ZSet类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  4. Redis常见命令操作

    一.Win版本redis登录操作步骤 1.打开DOS界面进入Redis安装路径 例如:cd C:\Users\sunway\Documents\Tencent Files\1571711197\Fil ...

  5. java char数组转string数组_Java中char数组(字符数组)与字符串String类型的转换方法...

    本文实例讲述了Java中char数组(字符数组)与字符串String类型的转换方法.分享给大家供大家参考,具体如下: 在Java语言编程时,使用"口令字段"jPasswordFie ...

  6. java中的string类型_Java中的字符串类型(String)

    String 字符串是一个引用数据类型,字符串都是对象. String特性:1.在程序中出现的字符串字面量(常量),在程序中运行时会以对象的形式保存在JVM内存的字符串池中,并且所有的这些字符串字面量 ...

  7. Redis基础,Linux下安装Redis和hredis,C++调用Redis,Redis中字符串设计

    文章目录 一.Redis是什么 Redis架构 Redis优势 Redis应用场景 二.Linux下载安装Redis(Ubuntu系统) 了解Redis版本 在线安装Redis 启动Redis服务端 ...

  8. Redis中的数据结构与常用命令

    开发系统:Ubuntu 17.04 Redis驱动:StackExchange.Redis 1.2.3 Redis版本:3.2.1 开发平台:.NET Core 对于Redis的介绍这里只写一句:Re ...

  9. C++中的string 类型占几个字节

    C++中的string 类型占几个字节 一:先看一道面面试题: 题目是要求输出:TrendMicroSoftUSCN 然后要求修改程序,使程序能输出以上结果.代码如下: #include <io ...

  10. C语言中没有string类型

    C语言中没有string类型 搞懂个事的根本核心是:C语言的数组类型里,唯一和字符串沾边的就只有char型数组了. 所以,理所当然的,我们就会想到用二维字符型数组来建立--把字符串当做数组里的一个元素 ...

最新文章

  1. 使用Jdom2将一个xml文件添加到另一个xml中
  2. PHP怎么输入表达式,PHP: 表达式 - Manual
  3. Java中for循环continue,break,return三者之间的关系
  4. 查看 SELinux状态及关闭SELinu
  5. Hibernate ORM框架——连接池相关
  6. (转)淘淘商城系列——前台系统工程搭建
  7. xwork-2.1.2.jar与xwork-core-2.1.6.jar的区别是什么? 在线等待 先谢谢了
  8. HTTP协议工作原理(与HTTPS的区别)
  9. 中琛物联‘连接+云+数据’服务助阵
  10. [原]工欲善其事,必先利其器,记一次处理Oracle Listener挂掉的处理过程
  11. 数学分析—集合与映射
  12. PWM智能温控风扇的原理
  13. 线程生命周期与创建线程的多种方式
  14. 线性规划,大M法,两阶段法
  15. 英式英语和美式英语的差异1-用词
  16. 用Midjourney画个美女,AI绘画也太强大了!!! - 第8篇
  17. Windows 10 自带输入法微软拼音「简体」「繁体」切换快捷键
  18. 【Bug解决】curl: (7) Failed connect to 192.168.159.133:8888; No route to host
  19. WC2016 挑战NPC
  20. vmware虚拟机动态添加硬盘识别不了新增加的硬盘

热门文章

  1. ets交易软件测试简历,ETS工具使用指南
  2. AI机器学习面试常见问题与答案
  3. python基础-古诗词填词游戏
  4. linux内核audit,linux下的audit服务
  5. sqlserver 人名_一个用来统计相同姓名人数的SQl语句_sqlserver
  6. odoo 菜单前台无法显示
  7. HTML5期末大作业:动漫A网站设计——动画漫展学习资料电影模板(6页) 网页设计作业 _ 动漫网页设计作业,网页设计作业 _ 动漫网页设计成品,网页设计作业 _ 动漫网页设计成品模板下载
  8. Dart 2.18 正式发布
  9. 报表格式.fp3打开查看方式
  10. cesium加载地形