Redis学习笔记--String(四)
Redis的第一个数据类型string
1.命令
1.1赋值
语法:SET key value
Set key value;
127.0.0.1:> set test
OK
1.2取值
语法:GET key
127.0.0.1:> get test
"123“
当数据不存在的时候,就返回空。
使用场景:当我们在使用的时候,比如输入用户名,他会首先获取一下,如果没有,就返回用户名不存在。或者当用户的注册一个用户名,判断是否有此用户存在。
1.3取值并赋值
语法:GETSET key value
127.0.0.1:> getset s2 //先获取老的值,子在获取新的值
""
127.0.0.1:> get s2
""
先get在进行set
1.4设置、获取多个值
语法:
MSET key value [key value …]
MGET key [key …]
首先先选取数据库
127.0.0.1:> mset k1 v1 k2 v2 k3 v3
OK
127.0.0.1:> get k1
"v1"
127.0.0.1:> mget k1 k3
) "v1"
) "v3"
用户场景:将数据的多个值获取出来。
1.5删除
语法:DEL key
127.0.0.1:> del test
(integer)
1.6数值增减
递增数字
当存储的字符串是整数时,Redis提供了一个实用的命令INCR,其作用是让当前键值递增,并返回递增后的值。
语法:INCR key
127.0.0.1:> incr num
(integer)
127.0.0.1:> incr num
(integer)
127.0.0.1:> incr num
(integer)
增加指定的整数
语法:INCRBY key increment
127.0.0.1:> incrby num
(integer)
127.0.0.1:> incrby num
(integer)
127.0.0.1:> incrby num
(integer)
递减数值
语法:DECR key
127.0.0.1:> decr num
(integer)
127.0.0.1:> decr num
(integer)
减少指定的整数
语法:DECRBY key decrement
127.0.0.1:> decr num
(integer)
127.0.0.1:> decr num
(integer)
127.0.0.1:> decrby num
(integer)
127.0.0.1:> decrby num
(integer) -
可以在系统做访问数量,主键也可以。
1.7向尾部追加
APPEND的作用是向键值的末尾追加value。如果键不存在则将该键的值设置为value,即相当于 SET key value。返回值是追加后字符串的总长度。
语法:APPEND key value
127.0.0.1:> set str hello
OK
127.0.0.1:> append str " world!"
(integer)
127.0.0.1:> get str
"hello world!"
1.8获取字符串长度
STRLEN命令返回键值的长度,如果键不存在则返回0。
语法:STRLEN key
127.0.0.1:> strlen str
(integer)
127.0.0.1:> set str hello
OK
127.0.0.1:> strlen str
(integer)
1.9应用可作为主键,或者商品条目
定义商品编号key:items:id
127.0.0.1:7003> INCR items:id
(integer) 2
127.0.0.1:7003> INCR items:id
(integer) 3
Redis学习笔记--String(四)的更多相关文章
- Redis学习笔记(四) 基本命令:String操作
原文链接:http://doc.redisfans.com/string/index.html append key value 将指定的值追加到key末尾,若key不存在,则创建并赋值,返回追加后的 ...
- 【转】Redis学习笔记(四)如何用Redis实现分布式锁(1)—— 单机版
原文地址:http://bridgeforyou.cn/2018/09/01/Redis-Dsitributed-Lock-1/ 为什么要使用分布式锁 这个问题,可以分为两个问题来回答: 为什么要使用 ...
- Redis学习笔记(四)-数据类型之list类型
redis的list类型其实就是一个每个子元素都是string类型的双向链表.所以[lr]push和[lr]pop命令的算法时间复杂度都是O(1).另外list会记录链表的长度.所以llen操作也是O ...
- Redis 学习笔记(四)RDB 和 AOF 持久化机制
一.Redis 持久化简介 Redis 的持久化功能是区别于 Memcached 显著特性,数据持久化可以保证系统在发生宕机和重启后数据不会丢失,对于 redis 这种存储在内存中的数据库显得尤为重要 ...
- Redis学习笔记(四)——数据结构之List
一.介绍 Redis列表(List)是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(left)或者尾部(right),一个列表最多可以包含232-1个元素(4294967295, ...
- Redis学习笔记(四)集合进阶
1.组合与关联多个集合 差集: SDIFF key1 [key2...](返回存在于key1但不存在其他集合中的元素) SDIFFSTORE destination key1 [key2...](将存 ...
- Redis学习笔记(二) Redis 数据类型
Redis 支持五种数据类型:string(字符串).list(列表).hash(哈希).set(集合)和 zset(有序集合),接下来我们讲解分别讲解一下这五种类型的的使用. String(字符串) ...
- Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash
引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...
- Redis学习笔记4-Redis配置详解
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...
随机推荐
- php intval函数
php intval函数 作用 intval — 获取变量的整数值 使用实例 <?php echo intval('-42'); // -42 ?> 相似函数 boolval() - 获取 ...
- 判断浏览器是否支持某些新属性---placeholder兼容问题解决
function is_true(){ return 'placeholder' in document.createElement('input'); } 实例:placeholder在低版本IE浏 ...
- 如何优雅的写UI——(5)选项卡功能实现
先在我们的选项卡可以说能用了,每个标签页都能点进去,但是这还远远没到能用的地步,比如说你把窗口最大化后. 立马就露出马脚了,所以这篇我们要先讲讲tabctrl的最基本的功能实现 改变选项卡大小 上图的 ...
- 【Uva 12093】Protecting Zonk
[Link]: [Description] n个节点的树; 每个节点都可以选择3种 1.覆盖和它相连的边; c1花费; 2.覆盖和它相连的边以及和它相连的点相连的边; c2花费; 3.不进行操作 覆盖 ...
- 怎样扩展Chromium各层的接口
加入新功能时,可能须要添加各层的接口,接口怎样加?必定须要向Chromium的原则看齐. 首先Chromium的模块设计遵循依赖倒置原则,上层模块依赖于低层模块.低层模块不会依赖上层模块的实现. 再者 ...
- android sdk 镜象网站
因为一些原因.Google相关非常多服务都无法訪问,所以在非常多时候我们SDK也无法升级,当然通过技术手段肯定能够解决,可是比較麻烦,并且下载速度也不怎么样. 这里笔者介绍一个国内的Android镜像 ...
- JavaScript的子集和超集
1.JavaScript子集 JavaScript子集的定义大部分都是出于安全考虑,仅仅有使用这门语言的一个安全的子集编写脚本,才干让代码运行得更安全.更稳定.比方怎样更安全地运行一段由不可信第三方提 ...
- thinkphp杂项功能(主干)
thinkphp杂项功能(主干) 一.总结 1.杂项功能:杂项里面我需要有点印象的是五个:缓存,多语言,图像处理,文件处理,单元测试 二.thinkphp杂项功能(主干) thinkphp扩展杂项功能 ...
- java中异常的限制
子类在覆盖父类方法时,父类的方法如果抛出了异常,那么子类的方法只能抛出父类的异常或者该异常的子类.如果父类抛出多个异常,那么子类只能抛出父类异常的子集.简单说:子类覆盖父类只能抛出父 ...
- js-轮播图的总结
/*两种播放行为:(一种自动播放,一种控制播放),一个定时器控制. *一个定时器控制两种播放状态. * 布局说明:装图片的盒子足够宽,让图片左浮,排成一排,最后一张重新放置第一张. * 定时器里执行自 ...