Redis (非关系型数据库) 数据类型 之 String类型

Posted 葫芦金刚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis (非关系型数据库) 数据类型 之 String类型相关的知识,希望对你有一定的参考价值。

Redis 一个内存数据库,通过 Key-Value 键值对的的方式存储数据。由于 Redis 的数据都存储在内存中,所以访问速度非常快,因此 Redis 大量用于缓存系统,存储热点数据,可以极大的提高网站的响应速度。

Redis通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

 

String 子串类型 常用基本操作

1.set  键  值     # ------------------------------------设置一个键和对应的值

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> set name ‘www‘
OK
127.0.0.1:6379[1]> set name1 ‘eee‘
OK
127.0.0.1:6379[1]> set name2 ‘rrr‘
OK
127.0.0.1:6379[1]> keys *
1) "name2"
2) "name1"
3) "name"

  

2.get  键          #-------------------------------------获取一个键对应的值

127.0.0.1:6379[1]> get name 
"www"
127.0.0.1:6379[1]> get name1
"eee"
127.0.0.1:6379[1]> get name2
"rrr"

  

3.setnx  键  值       #---------------------------------设置一个不存在的键,若存在则返回0,设置失败

127.0.0.1:6379[1]> setnx name sss
(integer) 0
127.0.0.1:6379[1]> setnx name3 sss
(integer) 1
127.0.0.1:6379[1]> get name3
"sss"

  

4.setex  键  时间  值      #---------------------------设置一个键值得有效时间

127.0.0.1:6379[1]> setex name6 15 wwwwwwww
OK
127.0.0.1:6379[1]> ttl name6
(integer) 10
127.0.0.1:6379[1]> ttl name6
(integer) 8
127.0.0.1:6379[1]> ttl name6
(integer) 5
127.0.0.1:6379[1]> ttl name6
(integer) -2

  

5.setrange   键   位置   值    #----------------------在键的指定位置插入值

127.0.0.1:6379[1]> setrange name6 0 zzzzzzzz
(integer) 10
127.0.0.1:6379[1]> get name6
"zzzzzzzzww"

  

6.msetnx  键1  值1   键2   值2....   #--------------批量设置不存在的键值

127.0.0.1:6379[2]> msetnx we ‘we‘ er ‘er‘ rt ‘rt‘
(integer) 1
127.0.0.1:6379[2]> get we
"we"
127.0.0.1:6379[2]> get er
"er"
127.0.0.1:6379[2]> get rt
"rt"

  

7.getset   键   新值                #---------------------获取键值,并设置为新值

127.0.0.1:6379[2]> getset we ew
"we"
127.0.0.1:6379[2]> get we
"ew"

  

8.getrange   键   0   4           #---------------------获取指定范围位置上的值

127.0.0.1:6379[2]> set name ‘12345678‘
OK
127.0.0.1:6379[2]> getrange name 1 3
"234"

  

9.mget   键1   键2  ....          #---------------------批量获取键对应的值

127.0.0.1:6379[2]> mget we er rt
1) "ew"
2) "er"
3) "rt"

10.incr    键                            #---------------------为指定的键值做自加1操作

127.0.0.1:6379[2]> set id 12
OK
127.0.0.1:6379[2]> incr id
(integer) 13
127.0.0.1:6379[2]> incr id
(integer) 14
127.0.0.1:6379[2]> get id
"14"

  

11.incrby 键    值                    #----------------------设置指定键加上指定的值

127.0.0.1:6379[2]> incrby id 14
(integer) 28
127.0.0.1:6379[2]> get id
"28"

  

12.decr   键                            #----------------------指定键的值做自减1操作

127.0.0.1:6379[2]> decr id
(integer) 27
127.0.0.1:6379[2]> decr id
(integer) 26
127.0.0.1:6379[2]> get id
"26"

  

13.decrby  键    值                 #-----------------------设置指定的键值减去指定的值

127.0.0.1:6379[2]> decrby id 12
(integer) 14
127.0.0.1:6379[2]> get id 
"14"

  

14.append 键    值                #-----------------------给指定的键值追加

127.0.0.1:6379[2]> set name ‘yuliang‘
OK
127.0.0.1:6379[2]> append name good
(integer) 11
127.0.0.1:6379[2]> get name
"yulianggood"

15.strlen   键                        #-----------------------求键值的长度

127.0.0.1:6379[2]> strlen name
(integer) 11

  

以上是关于Redis (非关系型数据库) 数据类型 之 String类型的主要内容,如果未能解决你的问题,请参考以下文章

python 之操作redis数据库(非关系型数据库,k-v)

centos 7之Redis群集详解及参数调优(内附搭建群集案例)

JavaWeb之redis&Jedis

数据库之Redis

Nosql之Redis

NoSQL之redis配置