redis(一)常见数据类型--字符串

1. 字符串

A. 赋值和取值

SET key value

GET key

  1. 递增数字

INCR key

例:

redis > INCR num

(integer) 1

Redis >INCR num

(integer) 2

注意:当前不存在时默认为0,所以第一次递增之后是1。当建的类型不是整数时会提示错误。

 

  1. 增加指定的整数

INCRBY key increment

例:INCRBY num 2

(interger) 5

  1. 减少指定的整数

  DECR key

  DECRBY key increment.

  1. 增加浮点数

  INCRBYFLOAT key increment

  例:

  INCRBYFLOAT foo 1.2

  “1.2”

  INCRBUFLOAT foo -1.2

  “0”

 

  1. 向尾部追加值

  APPEND key value

  SET word hello

  “OK”

  APPEND word world

(integer) 10     

GET word

“helloworld”

注意:如果APPEND 时不存在该建 则该键会被设置为 “world”,APPEND 的value可以用双引号。

 

 

  1. STRLEN key

  SET key “你好世界”

  OK

  STRLEN key

  (integer) 12

字符串类型可以存储二进制数据,所以它可以存储任何编码的字符串。例子中Redis接收到的是使用UTF-8编码的中文,由于“你好世界”四个字的UTF-8编码的长度都是3,所以此例中会返回12

  1. 同时设置和获取多个键值

  MSET key value [key value...]

  MGET key [key ...]

  例:

    127.0.0.1:6379> MSET t1 10 t2 "hello"

OK

127.0.0.1:6379> MGET t1 t2

1) "10"

2) "hello"

 

  J. 位操作

GETBIT key offset

SETBIT key offset

BITCOUNT key [start] [end]

BITTOP operation destkey key [key ...]

 

一个字节由8个二进制位组成,字符在redis中会以ascii码存储。

例:

127.0.0.1:6379> set foo bar

OK

127.0.0.1:6379> GETBIT foo 0

(integer) 0

127.0.0.1:6379> GETBIT foo 6

(integer) 1

127.0.0.1:6379> SETBIT foo 6 0

(integer) 1

127.0.0.1:6379> SETBIT foo 7 1

(integer) 0

127.0.0.1:6379> GET foo

"aar"

127.0.0.1:6379> BITCOUNT foo

(integer) 10

127.0.0.1:6379> BITCOUNT foo 0 1

(integer) 6

127.0.0.1:6379> SET foo1 bar

OK

127.0.0.1:6379> BITOP OR foo foo1

(integer) 3

 

该图为bar三个字符ascii 码的二进制内容。

 

命名:虽然Redis对于建的命名没有强制要求,但比较好的方式是使用“对象类型:对象ID:对象属性”来命名一个建。如使用键user:1:friends来存储ID为1的用户的好友列表。对于多个单词则推荐使用“.”分隔,一方面是沿用以前的习惯(Redis以前版本的键名不能包含空格等特殊字符),另一方面是在redis-cli中容易输入,无需使用双引号包裹。另外为了日后维护方便,键的命名一定要有意义,如u:1:f的可读性显然不如user:1:friends好(虽然采用较短的名称可以节省存储空间,但由于键值的长度往往远远大于键名的长度,所以这部分的节省大部分情况下并不如可读性来得重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值