Redis学习第二课:Redis String类型及操作
Strings类型
String是最简单的类型,一个Key对应一个Value,String类型是二进制安全的,可以包含任何数据,比如jpg图片或序列化的对象。
Strings类型的操作:
Set:设置Key对应的值为string类型的Value。如果多次对同一个Key进行Set操作,值会被覆盖。
如:
127.0.0.1:6379>set username anny
OK
127.0.0.1:6379>get username
"anny"
Setnx:设置Key对应的值为string类型的Value。如果Key已经存在,则返回数字0。nx表示"not exist"意思。
如:
127.0.0.1:6379>setnx username Mary
(integer)0
Setex:设置Key对应的值为string类型的Value,并指定此Key对应的有效期。
如设置Key=colour的有效期为10秒:
127.0.0.1:6379>setex colour 10 red
OK
127.0.0.1:6379>get colour
"red"
127.0.0.1:6379>get colour
(nil)
Setrange:设置指定Key的value值的子字符串。
如将邮箱abc@sohu.com替换成abc@163.com:
127.0.0.1:6379>set myemail abc@sohu.com
OK
127.0.0.1:6379>get myemail
"abc@sohu.com"
127.0.0.1:6379>setrange myemail 4 163.com
(integer)12
127.0.0.1:6379>get myemail
"abc@163.com"
mset:一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置。
如:
127.0.0.1:6379>mset key1 Jack key2 Tom key3 Kitty
OK
127.0.0.1:6379>get key2
"Tom"
msetnx:一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置,但是不会覆盖已经存在的Key.
127.0.0.1:6379>msetnx key4 Eric key2 Jerry
(integer)0
127.0.0.1:6379>get key4
(nil)
get:获取Key对应的string值,如果Key不存在返回nil。
getset:设置key的值,并返回key的旧值。
127.0.0.1:6379>getset key2 ABC "Tom"
127.0.0.1:6379>get key2 "ABC"
getrange:获取Key的Value值的子字符串。
127.0.0.1:6379>getrange myemail 0 2
"abc"
mget:一次获取多个key的值,如果对应key不存在则对应返回nil。
127.0.0.1:6379>mget key2 key5 key8
1)"ABC"
2)"Jerry"
3)(nil)
incr:对key的值做加加操作,步长为1,并返回新的值。
127.0.0.1:6379>set key6 30
OK
127.0.0.1:6379>get key6
"30"
127.0.0.1:6379>incr key6
(integer)31
incrby:同incr类似,加指定值(即在原值上增加多少),key不存在时会设置key,并认为原来的value是0。
127.0.0.1:6379>get key6
"31"
127.0.0.1:6379>incrby key6 8
(integer)39
127.0.0.1:6379>incrby key6 -8
(integer)31
decr:对key的值做减减操作,步长为1。
127.0.0.1:6379>decr key6
(integer)30
decrby:同decr类似,减指定值(即在原值上减少多少)。
127.0.0.1:6379>decrby key6 5
(integer)25
append:给指定key的字符串追加value,返回新字符串值的长度。
127.0.0.1:6379>get username
"anny"
127.0.0.1:6379>append username @gmail.com
(integer)14
127.0.0.1:6379>get username
"anny@gmail.com"
strlen:取指定key的value值的长度。
127.0.0.1:6379>strlen username
(integer)14
Redis学习第二课:Redis String类型及操作的更多相关文章
- redis 学习(3)-- String 类型
redis 学习(3)-- String 类型 String-结构 结构:Key-Value对 Value:可以是字符串.数字,也可以是二进制数组 限制:Value最大值为512MB String-常 ...
- Redis学习03——存储字符串(String)
--------------------- 作者:愤怒的小明 来源:CSDN 原文:https://blog.csdn.net/qiwenmingshiwo/article/details/78118 ...
- redis 学习(6)-- 集合类型
redis 学习(6)-- 集合类型 set 结构 无序 无重复 集合间操作 set 集合内操作 命令 含义 sadd key memebr1 [member2...] 向集合中添加一个或多个成员 s ...
- redis 学习(5)-- 列表类型
redis 学习(5)-- 列表类型 列表特点 有序.可以重复.左右两边插入弹出 索引相关知识 索引从左往右,从0开始逐个增大 0 1 2 3 4 5 索引从右往左,从-1开始逐个减小 -6 -5 - ...
- redis学习 (key)键,Python操作redis 键 (二)
# -*- coding: utf-8 -*- import redis #这个redis 连接不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. delete ...
- StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用
ConnectionMultiplexer ConnectionMultiplexer 是StackExchange.Redis的核心对象,用这个类的实例来进行Redis的一系列操作,对于一个整个应用 ...
- Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD
原文:Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链 ...
- cb19a_c++_只适合string类型的操作_提取_追加_替换
*cb19a_c++_只适合string类型的操作_提取_追加_替换三个substr重载函数-获取一个字符串的一部分六个append重载函数-追加字符十个replace重载函数-替换更换 重载函数越多 ...
- Redis string类型常用操作
Redis 有 string.list.set.zset.hash数据类型.string类型是最基础的,其他类型都是在string类型上去建立的,所以了解熟悉string类型的常用操作对于学习re ...
随机推荐
- asp.net <asp:Repeater>下的radio的单选使用
aspx页面 <asp:Repeater ID="rptData" runat="server"> <ItemTemplate> < ...
- Java中的RTTI
RTTI可以帮助我们在运行时识别对象和类的信息. 一般传统的RTTI有三种实现方式: 1. 向上转型或向下转型(upcasting and downcasting),在java中,向下转型(父类转成子 ...
- codeforces 352 div 2 C.Recycling Bottles 贪心
C. Recycling Bottles time limit per test 2 seconds memory limit per test 256 megabytes input standar ...
- StringBuffer中的sBuffer.delete(0,4);
只删除第0-3位的字符,第4位是不删的
- XML_CPP_资料_libXml2_01_Code_ZC(?.pro)
ZC:最下面有 ?.pro文件的设置写法 ZC: Win7x64,qt-opensource-windows-x86-msvc2010_opengl-5.3.2.exe,cn_visual_studi ...
- URAL 1635 Mnemonics and Palindromes
URAL 1635 思路:区间dp+贪心,先n^2处理出每段区间是否是回文串,然后贪心地找每一段1到i的最少分割. 代码: #include<bits/stdc++.h> using na ...
- Unity搭建简单的图片服务器
具体要实现的目标是:将图片手动拷贝到服务器,然后在Unity中点击按钮将服务器中的图片加载到Unity中. 首先简答解释下 WAMP(Windows + Apache + Mysql + PHP),一 ...
- Java 如何抛出异常、自定义异常、手动或主动抛出异常
public static void main(String[] args) { try { throw new Exception("抛出异常"); } catch (Excep ...
- 雷林鹏分享:Ruby 安装 - Unix
Ruby 安装 - Unix 下面列出了在 Unix 机器上安装 Ruby 的步骤. 注意:在安装之前,请确保您有 root 权限. 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 Ruby ...
- Illumina Sequence Identifiers 序列标识符 index详解
大家基本都知道什么是 FASTA 和 FastQ 格式了,但这是不够的. 我们还需要了解世界上最大的测序公司自己定制的 FastQ 格式,因为你可能会经常用到,有时还会亲自去处理它们. 本文主题:Il ...