String是最简单的数据类型,一个key对应一个value,string类型是二进制安全的,redis的String可以包含任何数据,

比如jpg图片或者系列化的对象。

Set方法:

设置key对应的值为String类型的value,例如我们添加一个

name=xiaoming的键值对。

[root@marslv bin]# redis-cli -h 127.0.0.1 -p 6379 -a lh801309
127.0.0.1:6379> set name xiaoming
OK
127.0.0.1:6379> get name
"xiaoming"
127.0.0.1:6379>

如果在set同一个键的话会覆盖,如果不想覆盖怎么办?

可以用setnx方法,如果不存在添加,存在返回0

127.0.0.1:6379> setnx name xiaohong
(integer) 0

setex方法:指定设置键的有效期:

127.0.0.1:6379> setex age 10 10
OK
127.0.0.1:6379> get age
"10"
127.0.0.1:6379> get age
(nil)

setrange方法:替换子字符串

127.0.0.1:6379> set mail lv@163.com
OK
127.0.0.1:6379> SETRANGE mail 4 @gmail.com
(integer) 14
127.0.0.1:6379> get mail
"lv@1@gmail.com"
127.0.0.1:6379>

mset方法:批量插入

127.0.0.1:6379> MSET key1 1 key2 2 key3 3
OK
127.0.0.1:6379> get key1
"1"
127.0.0.1:6379> get key2
"2"
127.0.0.1:6379> get key3
"3"

msetnx 一次性设置多个key的值,成功返回ok表示所有值被设置了,

失败返回0表示没有任何值被 设置,但是不会覆盖已经存在的key

127.0.0.1:6379> MSETNX key4 4 key5 5 key3 0
(integer) 0
127.0.0.1:6379> get key4
(nil)

只要一个不成功就返回0,因为key3已经存在

getset方法:获取旧值并设置新值

127.0.0.1:6379> get key1
"1"
127.0.0.1:6379> getset key1 100
"1"
127.0.0.1:6379> get key1
"100"

getrange方法:获取指定的子字符串

127.0.0.1:6379> get mail
"lv@1@gmail.com"
127.0.0.1:6379> GETRANGE mail 0 6
"lv@1@gm"

mget方法:批量获取

127.0.0.1:6379> mget key1 key2 key3
1) "100"
2) "2"
3) "3"

incr方法:对key的值做加加操作,并返回新值

127.0.0.1:6379> get key1
"100"
127.0.0.1:6379> INCR key1
(integer) 101
127.0.0.1:6379> INCR key1
(integer) 102

incrby方法:同incr,加指定的值,key不存在的时候回设置key,

并认为原来的value是0

127.0.0.1:6379> get key1
"102"
127.0.0.1:6379> INCRBY key1 5
(integer) 107
设置正数就是加,设置负值就是减

decr方法:对key的值做减减操作。

decrby方法:同decr类似,减指定值

append方法:给指定的key的value追加

127.0.0.1:6379> get mail
"lv@1@gmail.com"
127.0.0.1:6379> append mail .net
(integer) 18
127.0.0.1:6379> get mail
"lv@1@gmail.com.net"
127.0.0.1:6379>

strlen 获取指定key的value值

127.0.0.1:6379> get mail
"lv@1@gmail.com.net"
127.0.0.1:6379> STRLEN mail
(integer) 18

redis数据类型:Strings的更多相关文章

  1. Redis数据类型Strings、Lists常用操作指令

    Redis数据类型Strings.Lists常用操作指令 Strings常用操作指令 GET.SET相关操作 # GET 获取键值对 127.0.0.1:6379> get name (nil) ...

  2. Redis数据类型-Strings

    Redis 简介 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI ...

  3. redis数据类型及使用场景

    Redis数据类型  String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令:  set,get,decr,incr,mge ...

  4. redis数据类型-字符串类型

    Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...

  5. Redis数据类型和常用命令

    Redis相较于其它的数据库虽然简单,但是要熟记所有命令的用法也并非易事.一个简单的技巧是通过要操作的数据类型来将这些命令进行结构化. 数据类型和对应命令 所有存储于redis中的数据都对应于一个键值 ...

  6. Redis数据类型简介(十分钟快速学习Redis)

    如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...

  7. 面试官问我redis数据类型,我回答了8种

    面试官:小明呀,redis 有几种数据结构呀? 小明:8 种 面试官:那你说一下分别是什么? 小明:raw,int,ht,zipmap,linkedlist,ziplist,intset,skipli ...

  8. Redis入门到放弃系列-redis数据类型

    Redis数据类型? Redis 提供一些常用的数据类型:Strings.Lists.Sets.Sorted sets.Hashes.Arrays.Bitmap.Streams Strings(字符串 ...

  9. 初识redis数据类型

    初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...

  10. Redis数据类型介绍

    Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...

随机推荐

  1. Dom编程(一)

    dom:document object model 文档对象模型 1.事件 body 事件:onload onunload onbeforeunload body.document对象的事件 (1)o ...

  2. webstorm for mac 破解步骤

    第一步:Web storm下载--从官网下载就可以 第二步:下载 - Java for OS X 2015-001--https://support.apple.com/kb/DL1572?viewl ...

  3. cocoaPods安装成功终端代码(期间报error: RPC failed; result=56, HTTP code = 200)

    Last login: Sat Oct 15 23:30:24 on ttys002 Sivek_lindeMacBook-Pro:~ Sivek_lin$ sudo gem update --sys ...

  4. 【锋利的Jquery】读书笔记三

    DOM操作 三个方面;DOM core    html-dom  css-dom 注意点: 删除事件中 三种删除节点的方法   remove   detach   empty remove不解释 de ...

  5. jdk7 HashSet和HashMap源码分析

    先来看看HashMap的一些成员变量以及他们的含义 /** * The default initial capacity - MUST be a power of two. */ static fin ...

  6. 《JavaScript DOM编程艺术》读书笔记

    这是自己JS入门的一本书,反复看过几遍,作者的文笔风趣,阅读起来不枯燥也显轻松~ 本书从JS简史讲到基础语法到DOM,再以一个图片库案例为主线,讲如何运用JS来实现想要的动效,同时对已写案例进行兼容优 ...

  7. Quartz简单实例

    Quartz中提供了两种触发器,分别是CronTrigger和SimpleTrigger. 1. SimpleTrigger 每隔若干毫秒来触发纳入进度的任务. 2. CronTrigger 在特定& ...

  8. 101个Linq例子(40-60)

    GroupBy - Simple 2 public void Linq41() { string[] words = { "blueberry", "chimpanzee ...

  9. Mybatis的传参

    最近重新温习了遍Mybatis ,觉得还是汇总一下比较好,方便自己以后的快速开发 最终要的一点事,自己写的话,记忆更加深刻: 首先自己先写了个静态块,防止代码冗余: private static Sq ...

  10. APK安装时的过滤方式:包名白名单、证书认证

    1.定义一些全局变量,文件位置: Build.java (frameworks\base\core\java\android\os) /** * 包管理方式名称<br> * whiteli ...