Redis命令学习-string类型操作
APPEND key value
EXISTS mykey
0
APPEND mykey "Hello"
5
APPEND mykey " world"
11
GET mykey
Hello world
SETBIT
SETBIT bit 10086 1
0
SETBIT bit 10086 1
1
GETBIT bit 10086
1
GETBIT bit 100
0
BITCOUNT
BITCOUNT bits
0
SETBIT bits 0 1
0
BITCOUNT bits
1
SETBIT bits 3 1
0
BITCOUNT bits
2
- 模式:使用bitmap实现用户上线次数统计
SETBIT peter 101 1
GETBIT key offset
EXISTS bit
0
GETBIT bit 10086
0
SETBIT bit 4 1
0
GETBIT bit 4
1
DECR
SET num 10
OK
DECR num
9
EXISTS count
0
DECR count
-1
DECRBY key decrement
假设值包括错误的类型,则会返回一个错误。
SET count 10
OK
DECRBY count 20
-10
EXISTS pages
0
DECRBY pages 1
-1
DECRBY pages -1
0
DECRBY pages -3
3
GET key
GET db
SET DB redis
OK
get DB
redis
DEL db
0
EXISTS db
0
LPUSH db redis mongodb mysql
3
GET db
ERR Operation against a key holding the wrong kind of value
GETRANGE key start end
SET greeting "Hello,my friend"
OK
GETRANGE greeting 0 4
Hello
GETRANGE greeting -1 -5
GETRANGE greeting -3 -1
end
GETRANGE greeting 0 -1
Hello,my friend
GETRANGE greeting 0 10000000
Hello,my friend
GETSET key value
当key没有旧值,即key不存在时。返回nil。
GETSET db mongodb
GET db
mongodb
GETSET db redis
mongodb
INCR mycount
1
INCR mycount
2
INCR mycount
3
GETSET mycount 0
3
INCR key
SET page_view 20
OK
INCR page_view
21
INCRBY key increment
SET rank 50
OK
INCRBY rank 20
70
GET rank
70
SET book "REDIS"
OK
INCRBY book 1
ERR value is not an integer or out of range
INCRBYFLOAT key increment
不管加法计算所得的浮点数的实际精度有多长。
SET mykey 10.50
OK
INCRBYFLOAT mykey 0.1
10.6
SET mykey 314e-2
OK
INCRBYFLOAT mykey 0.5
3.64
SET mykey 4
OK
INCRBYFLOAT mykey 0.5
4.5
MGET key[key...]
该命令永不失败。
SET redis redis.com
OK
SET mongodb mongodb.com
OK
MGET redis mongodb mysql
redis.com
mongodb.com
MSET key value[key value]
假设不希望被覆盖。能够使用MSENX命令。
MSET date "2012-05" time "11:00 am" weather "SUNNY"
OK
MGET date time weather
2012-05
11:00 am
SUNNY
SET google "google.hk"
OK
MSET google "google.com"
OK
GET google
google.com
MSETNX key value[key value ...]
假设有一个key存在,那么MSETNX操作会拒绝运行全部给定的key。
失败返回0。
MSETNX rmdbs "MySql" nosql "MongoDB" key-value-store "Redis"
1
MGET rmdbs nosql
MySql
MongoDB
MSETNX rmdbs "MySql" language "Java"
0
PSETEX key milliseconds value
PSETEX mykey 10000 "HELLO"
OK
PTTL mykey
7110
GET mykey
HELLO
PTTL mykey
-1
GET mykey
SET key value [EX seconds] [PX milliseconds] [NX] [NX]
- EX seconds:设置键的国企时间为second秒。此參数等同于SETEX key second value。
- PX millisecond:设置键的过期时间为millisecond毫秒。
SETkey效果等同于
value PXmillisecond
PSETEX
key millisecondvalue。 - NX:仅仅在key不存在时。才对key运行操作。
set key value NX 等同于: SETNX key value。
- XX:仅仅在键已经存在时,才进行操作。
SET key "value"
OK
GET key
value
SET key "new-value"
OK
get key
new-value
SET key "hello" EX 100860
OK
TTL key
100856
TTL key
100852
SET key "moto" PX 123331
OK
TTL key
121
get key
moto
TTL key
107
SET key "value" NX
SET key1 "value" NX
OK
SET key "value" XX
OK
SET key2 "value" XX
SETEX key seconds value
SETEX user_id 60 10086
OK
TTL user_id
54
get user_id
10086
get user_id
10086
TTL user_id
36
SETNX key value
EXISTS job
0
SETNX job "code-farmer"
1
SETNX job "programmer"
0
GET job
code-farmer
SETRANGE key offset value
redis> SET greeting "hello world"
OK
redis> SETRANGE greeting 6 "Redis"
(integer) 11
redis> GET greeting
"hello Redis"
# 对空字符串/不存在的 key 进行 SETRANGE
redis> EXISTS empty_string
(integer) 0
redis> SETRANGE empty_string 5 "Redis!" # 对不存在的 key 使用 SETRANGE
(integer) 11
redis> GET empty_string # 空白处被"\x00"填充
"\x00\x00\x00\x00\x00Redis!"
STRLEN key
当key不存在时,返回0。
SET mykey "Hello World"
OK
STRLEN mykey
11
STRLEN nonestr
0
Redis命令学习-string类型操作的更多相关文章
- redis 的使用 (基础, key操作, string类型操作)
使用redis set 类型: 没有重复元素 list 链表类型 有重复累型 sort set 类型 没有重复元素 1.1 存储数据 读取数据 // 数据储存在 内存中 set name laowen ...
- redis命令学习(二) · THIS SPACE
列表(Lists)操作命令 Redis列表是简单的字符串列表,按照插入顺序排序. 你可以添加一个元素导列表的头部(左边)或者尾部(右边)LPUSH命令插入一个新的元素导头部,而RPUSH插入一个新元素 ...
- Redis - string类型操作
以个人信息为例操作string类型 设置操作: set: set key value 创建key-value名值对 setnx: setnx key value ...
- Redis 命令学习
每天不学习点新的东西,感觉就有点会被社会淘汰掉了.也许现在学习的知识会很快忘记,下次学习用到这个知识点的时候,再回来翻记录的笔记,我想这样会比从头再学,效率会高点吧. 闲话不多聊,回归正题.今天学习r ...
- 3、Redis中对String类型的操作命令
写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...
- Redis自学笔记 --string类型
string类型 set 赋值 get ...
- Redis中一个String类型引发的惨案
曾经看到这么一个案例,有一个团队需要开发一个图片存储系统,要求这个系统能快速记录图片ID和图片存储对象ID,同时还需要能够根据图片的ID快速找到图片存储对象ID.我们假设用10位数来表示 ...
- Redis之String类型操作
接口IRedisDaoStr: package com.net.test.redis.base.dao; import java.util.List; import java.util.Map; /* ...
- redis命令学习的注意问题
1.set get命令只用于字符串,get命令取key值时string正常返回,没有key返回nil,其他类型会报错 设置的时候是set test redis ex 200000等同于SETEX te ...
随机推荐
- [Atcoder Grand Contest 002] Tutorial
Link: AGC002 传送门 A: …… #include <bits/stdc++.h> using namespace std; int a,b; int main() { sca ...
- [Contest20180415]看无可看
题意:有一个数列$f$,对$\forall i\geq2,f_i=2f_{i-1}+3f_{i-2}$,给定$f_0,f_1$,再给定一个集合$S=\{a_{1\cdots n}\}$和$k$,求$\ ...
- [TC-FindingFriends]Finding Friends
题目大意: 给定一个长度为$n(n\le10^5)$的数列$A(A_i\le10^9)$,求最小的$k$满足存在一个长度至少为$m(m\le n)$的子串,对于串中的每一个数$A_i$,都至少存在一个 ...
- iOS开发——使用Autolayout生成动态高度的TableViewCell单元格
步骤一.TableViewCell中使用Autolayout 要点:Cell的高度必须在Constraints中指明,但不能定死,需要让内部由内容决定高度的View决定动态高度. 如UILabel设置 ...
- Spring.NET的中间数据层(Middle Tier Data Access)——事务管理(Transaction management)
简介 Spring.NET为事务管理提供了一个持久化抽象(consistent abstraction ),其优点如下: 为不同事务API,例如ADO.NET,Enterprise Services, ...
- OneThink框架的文章详情页分页
Application/Home/Controller/ArticleController.class.php的detail函数修改结果如下: /* 文档模型详情页 */public function ...
- cpu压力测试
一.cpu压力测试 1.安装stress软件 sudo apt-get install stress #加压 nohup stress --cpu 8 & #查看cpu负载 top
- 一、ELKStack介绍与入门实践
第1章 ELKStack 对于日志来说,最常见的需求就是收集.存储.查询.展示,开源社区正好有相对应的开源项目:logstash(收集).elasticsearch(存储+搜索).kibana(展示) ...
- HTML5 canvas图形库 RGraph【转】
RGraph是一个使用HTML5 Canvas标签实现的图表制作Library.利用该Library生成的Chart具有可交互性,当鼠标点击或移过时会显示相应的信息,可以动态加载Chart或对特殊点进 ...
- 对jsp中Url含中文字符的编码处理
有一段url="/app/index/index.jsp?userName='测试'":在传入到jsp页面后. 用 <% String userName=request.g ...