三、redis对字符串类型的操作

1、set key value [ex 秒数] / [px 毫秒数]  [nx] /[xx]

如: set a 1 ex 10 , 10秒有效

Set a 1 px 9000  , 9秒有效

注: 如果ex,px同时写,以后面的有效期为准

如 set a 1 ex 100 px 9000, 实际有效期是9000毫秒

nx: 表示key不存在时,执行操作

xx: 表示key存在时,执行操作

2、mset  multi set , 一次性设置多个键值

例: mset key1 v1 key2 v2 ....

3、get key

作用:获取key的值

4、mget key1 key2 ..keyn

作用:获取多个key的值

5、setrange key offset value

作用:把字符串的offset偏移字节,改成value

redis 127.0.0.1:6379> set greet hello
OK
redis 127.0.0.1:6379> setrange greet 2 x
(integer) 5
redis 127.0.0.1:6379> get greet
"hexlo"

注意: 如果偏移量>字符长度, 该字符自动补0x00

127.0.0.1:6379> set word hello
OK
127.0.0.1:6379> get word
"hello"
127.0.0.1:6379> setrange word 6 !
(integer) 7
127.0.0.1:6379> get word
"hello\x00!"

6、append key value

作用: 把value追加到key的原值上

127.0.0.1:6379> append word zbbiex
(integer) 13
127.0.0.1:6379> get word
"hello\x00!zbbiex"

7、getrange key start stop

作用: 是获取字符串中 [start, stop]范围的值

注意: 对于字符串的下标,左数从0开始,右数从-1开始

redis 127.0.0.1:6379> set title ‘chinese‘
OK
redis 127.0.0.1:6379> getrange title 0 3
"chin"
redis 127.0.0.1:6379> getrange title 1 -2
"hines"

注意:

start>=length, 则返回空字符串

stop>=length,则截取至字符结尾

如果start 所处位置在stop右边, 返回空字符串

8、getset key newvalue

作用: 获取并返回旧值,设置新值

redis 127.0.0.1:6379> set cnt 0
OK
redis 127.0.0.1:6379> getset cnt 1
"0"
redis 127.0.0.1:6379> getset cnt 2
"1"

9、incr key

作用: 指定的key的值加1,并返回加1后的值

注意:

不存在的key当成0,再incr操作

范围为64有符号

incrby key number
redis 127.0.0.1:6379> incrby age  90
(integer) 92

10、incrbyfloat key floatnumber

redis 127.0.0.1:6379> incrbyfloat age 3.5
"95.5"

11、decr key

redis 127.0.0.1:6379> set age 20
OK
redis 127.0.0.1:6379> decr age
(integer) 19

12、decrby key number

redis 127.0.0.1:6379> decrby age 3
(integer) 16

13、getbit key offset

作用:获取值的二进制表示,对应位上的值(从左,从0编号)

redis 127.0.0.1:6379> set char A
OK
redis 127.0.0.1:6379> getbit char 1
(integer) 1
redis 127.0.0.1:6379> getbit char 2
(integer) 0
redis 127.0.0.1:6379> getbit char 7
(integer) 1

14、setbit  key offset value

设置offset对应二进制位上的值

返回: 该位上的旧值

注意:

1:如果offset过大,则会在中间填充0,

2: offset最大大到多少

3:offset最大2^32-1,可推出最大的的字符串为512M

 

  

 

原文地址:https://www.cnblogs.com/zbbiex/p/10527745.html

时间: 2024-11-05 19:38:13

三、redis对字符串类型的操作的相关文章

三:redis的List类型相关操作

==========================三种:List类型===================== 介绍:list类型及操作 list是一个链接表结果,只要功能是push,pop.获取一个范围的所有值等等, 操作key理解为链表的名字,redis的list类型其实就是一个每个子元素都是string类型的双向链表. 我们可以通过push.pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈,又可以作为队列 1:lpush: 在key对应list的头部添加字符串元素 (

一:redis 的string类型相关操作

*redis客户端中的使用: =============一种:string类型的方法================ 介绍:string是redis的最简单类型,一个key对应一个value,string类型是二进制安全的. redis的string可以包含任何数据,比如jpg图片或者序列化的对象 1:一个key只包含一个value值,当设置相同值时=会覆盖 设置值:set name leyangjun 获取值:get name 2:setnx:(会判断设置的值是否存在,不存在则设置) 设置ke

二:redis 的hash类型相关操作

=====================二种:hash类型================== 介绍:redis -> hash是一个string类型的field和value的映射表 hash特别适合对应存储对象,相较于将对象的每个字段存成单个string类型 将一个对象存储在hash类型中会占用更少的内存,并且可以方便的存取整个对象 0:hset *如果 key(就是hash表) 不存在,一个新的哈希表被创建并进行 HSET 操作 设置hash field为指定值,如果key不存在,则先创建

四:redis的sets类型相关操作(有序和无序集合)

================四五种(有序和无序集合):sets类型(就是集合)============= 一介绍:  set表示集合,添加是是随意添加的----->无序集合 set是集合,它是string类型的无序集合. set是通过hash table实现的,添加,删除和查找的复杂度都是0(1). 对集合我们可以取并集.交集.差集. 通过这写操作我们可以实现sns中的好友推荐和blog的tag功能 1:sadd 向名称key的set中添加元素(唯一的) 例:sadd myset1 one 

Redis笔记-String类型及操作(二)

String类型及操作 String是简单的类型 ,一个Key对应一个Value. String类型是二进制安全的. Redis的String可以包含任何数据,比如jpg图片或者序列化的对象 Set 设置Key对应的值为String类型的value 例如:添加一个name=lijie的键值对 127.0.0.1:6379> set name lijie//获取值127.0.0.1:6379> get name//重复赋值,会被覆盖 setnx 设置key对应的值为String类型的value,

redis读取字符串类型的整数时会直接将其当做整数来处理

今天遇到一个有趣的问题,当系统从mysql中加载一个字符串类型的整形数据到redis后,再从redis中取出来,其类型就变成Integer类型了,操作过程如下: 数据库中key为varchar类型的数字,比如4,value为varchar类型的日期类型,比如2014-12-19 然后加载到redis中,再从redis中取出来放到Map<String,String>中,但是通过string类型的key,比如这里是"4",但是死活都从map中无法取出2014-12-19这个日期

[redis] redis 对string类型数据操作

package com.xwolf.java.redis; import org.junit.Before; import org.junit.Test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; import java.util.List; /** * Created by Administrator on

redis之hashes类型及操作

hashes类型及操作Redis hash是一个string类型的field和value的映射表.它的添加.删除操作都是O(1)(平均).hash特别适合用于存储对象.相较于将对象的每个字段存成单个string类型.将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象.省内存的原因是新建一个hash对象时开始是用zipmap(又称为small hash)来存储的.这个zipmap其实并不是hash table,但是zipmap相比正常的hash实现可以节省不少hash本身

python之字符串类型及其操作

1.1字符串类型的表示 字符串是字符的序列表示,可以由一对单引号('). 双引号(")或三引号(’")构成.其中,单引号和双引号都可以表示单行字符串,两者作用相同.使用单引号时,双引号可以作为字符串的一部分;使用双引号时,单引号可以作为字符串的一部分.三引号可以表示单行或者多行字符串.3种表示方式如下.单引号字符串:’单引号表示,可以使用"双引号"作为字符串的一部分’ 双引号字符串: "双引号表示,可以使用单引号"作为字符串的一部分"