`
irfen
  • 浏览: 204551 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Redis学习笔记(三)——Redis常用命令入门——字符串类型命令

阅读更多

前面两节已经把Redis了解了并安装完成了,接下来就是学习一下基础的命令了。

Redis总共有五种数据类型,在学习的时候,一定要开一个redis-cli程序,边看边练,提高效率。

一、最简单的命令

1、获得符合规则的键名列表

keys *

这里的*号,是指列出所有的键,同时*号也可以替换成其他支持glob风格通配符格式,具体规则如下:

?:匹配一个字符

*:匹配任意个(包括0个)字符

[]:匹配括号间多大任一个字符,可以使用“-”表示范围,如[a-z]

\x:匹配字符x,用于转义,如需匹配问号,需要\?才能匹配

这里说明一下,redis命令是不区分大小写的,还有就是keys命令是需要遍历Redis中所有的键的,当键很多时,很耗费性能的。所以在生产环境中要尽可能的不用。

 

本文原创于本人个人博客,文章优先发布于 http://irfen.me

 

2、判断键是否存在

exists foo

如果存在返回证书类型1,否则返回0

3、删除键

del foo

返回的是删除的键的个数,这里说明也可以一次删除多个键,只需空格再加键就可以了。例如:

del foo bar

如果删除一个键,这个键已经不存在了就会返回0 。

4、获得键值的数据类型

type foo

这里在重复一下上次说过的,redis的数据类型有:string(字符串类型)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型)。

下面开始详细介绍每种数据类型的命令。

 

本文原创于本人个人博客,文章优先发布于 http://irfen.me

 

二、字符串类型

字符串类型是Redis中最基本的数据类型,他能存储任意形式的字符串,包括二进制数据。字符串类型也是其他四种数据类型的基础。也就是说,其他四种数据类型都是由字符串类型所组成的。

常用命令如下:

set key value   #赋值,返回值是OK

get key            #取值,返回值是对应键的值

incr key          #递增数字,虽然是字符串类型,但如果可以是整型的话,也是可以使用此命令递增的,返回值是递增后的值

incrby key number      #这个命令和上一个类似,只不过可以通过number指定增长的数量,返回值同样是增长后的值

decr key        #递减数字,类似递增,这里不做过多解释了

decrby key number     #类似于incrby,这里大家应该可以猜到,decrby key number和incrby key -number是一个意思

incrbyfloat key floatnumber     #增加指定浮点数,这个是增加一个双精度的浮点数,位数多了就会不准

append key value      #向尾部追加值,如 append foo ” value”,这个时候用引号是为了标识有空格,返回值为值的总长度

srelen key        #获取字符串值总长度,返回值就是长度,如果key不存在,则返回0

mget key [key ...]        #同时获得多个键值,键值的列表

mset key value [key value ...]     #同时设置多个键值,成功返回OK

setbit/getbit    #这个是位操作,具体示例如下:

redis>set foo bar
OK

这时赋值给foo值为bar,对应的ASCII码为98、97、114,转换为八位二进制为:

01100010、01100001、01110010

进行如下操作:

redis>getbit foo 0
0
redis>getbit foo 1
1
redis>getbit foo 2
1
redis>getbit foo 3
0

所以getbit就是获取key对应的字符串类型键值指定位置的二进制的值(0或1),索引从0开始。

如果获取超出了最大值,也返回0.

而相反,setbit就是来设置key对应的指定位置的二进制值的。返回值是该位置的旧值。例如

redis>setbit foo 6 0
(integer) 1

如果要设置的值超过了最大长度,则命令会将最大长度之后到最大长度之间未设置的值统一设置为0,同理,设置一个不存在的键值,也会自动把它前面所有未设置的位置二进制设为0。如:

redis>setbit qqq 8 1
(integer) 0

则会把qqq对应的值变为00000001 。

bitcount key命令可以返回字符串类型键值中二进制值为1的个数。

同时他的参数还可以设置查询的范围,

bitcount foo 0 1   #意思是只查询ba两个字节中包含二进制值为1的个数。

最后一个bitop命令,可以进行位操作。

bitop OR res foo1 foo2    #意思是把foo1和foo2做OR运算,结果存入res中。bitop支持的位操作有ND、OR、XOR、NOT四个。

字符串的操作命令就这些了。位的命令还是很有用的,比如我们在存储性别的时候可以把性别的类型设置为一个比特位,这样超级省空间的。

 

本文原创于本人个人博客,文章优先发布于 http://irfen.me

0
0
分享到:
评论

相关推荐

    Redis学习笔记整理

    二、 redis学习笔记之数据类型 3 三、 redis学习笔记之排序 11 四、 redis学习笔记之事务 16 五、 redis学习笔记之pipeline 20 六、 redis学习笔记之发布订阅 23 七、 redis学习笔记之持久化 28 八、 redis学习笔记...

    redis学习笔记

    redis学习笔记redis 是一个开源的 key-value 数据库。它又经常被认为是一个数据结构服务器。 因为它的 value 不仅包括基本的 string 类型还有 list,set ,sorted set 和 hash 类型。当 然这些类型的元素也都是 string...

    超详细的redis学习笔记

    以上内容详细介绍了如何启动和停止 Redis 服务、如何使用 Redis 命令行客户端以及如何进行基本的 Redis 操作,包括键的管理、数据库切换和字符串类型的基本命令。这些知识点对于初学者来说非常实用,有助于快速掌握 ...

    Redis全套学习笔记 (带章节目录) 完整版pdf

    本文是一篇关于Redis全套学习笔记的文章,主要介绍了Redis的基础知识、数据结构、持久化、集群、高可用、性能优化等方面的内容。通过本文的学习,读者可以全面掌握Redis的使用和应用,提高自己的技术水平和实践能力...

    redis学习笔记.zip

    Redis是一款高性能的键值对数据库,它以内存存储为主,数据持久化为辅,提供了丰富的数据类型,包括字符串、哈希、列表、集合和有序集合。这个“redis学习笔记.zip”压缩包很可能是包含了关于Redis的学习资料,可能...

    redis学习笔记.docx

    Redis学习笔记 Redis是基于键值对存储的NoSQL数据库,可以用来存储和检索数据。下面是Redis的基础知识点: 基础命令 * set key value:保存一个数据,重复set相同的key只会保存最新的value * get key:获取一个...

    Redis全套学习笔记-带章节目录-114页.pdf

    * Redis命令大全包括了各种数据类型的操作命令,如键命令、字符串命令、列表命令、集合命令、哈希命令和有序集合命令等。 Redis 5大数据类型 * 字符串(String):字符串是Redis最基本的数据类型,使用set命令设置...

    redis的学习笔记 redis.pdf

    在String类型中,可以使用set命令设置值,使用get命令获取值,append命令用于追加字符串。除了基本的设置和获取值的操作外,还可以通过getrange命令获取字符串的子串,setrange命令修改字符串的内容,getset命令则...

    Redis学习笔记

    Redis学习笔记

    Redis学习笔记-包括周阳和狂神说

    - 数据类型:Redis支持丰富的数据类型,包括字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。 - 持久化:Redis通过RDB和AOF两种方式进行数据持久化,确保在服务器重启后能恢复数据。 ...

    redis学习笔记.pdf

    Redis学习笔记 Redis是一个开源的基于键值对(Key-Value)NoSQL数据库,使用ANSI C语言编写、支持网络、基于内存但支持持久化。性能优秀,并提供多种语言的API。Redis可以被称为KV数据库,键值对数据库,内部存储...

    7.Redis学习笔记.pdf

    Redis不仅支持基本的键值对存储,还支持多种数据结构,包括字符串(strings)、散列(hash)、列表(list)、集合(set)、有序集合(sorted set)以及范围查询、位图(bitmaps)、超日志(hyperloglogs)和地理空间索引...

    狂神说Redis笔记.pdf

    Redis提供了丰富的命令来操作这些数据类型,如SET、GET用于字符串,HSET、HGET用于哈希,LPUSH、RPOP用于列表,SADD、SMEMBERS用于集合,ZADD、ZRANGE用于有序集合。此外,还有 incr/decr 命令进行原子计数,EXPIRE...

    Redis全套学习笔记

    它支持多种数据结构,包括字符串(String)、链表(List)、哈希(Hash)、集合(Set)和有序集合(Zset),这些丰富的数据结构使得Redis在缓存、计数、发布订阅系统等多种场景下表现出色。 1. Redis 概述与安装: Redis ...

    redis学习笔记+练习springboot-redisdemo

    本资源包包含了关于Redis的学习笔记以及一个基于SpringBoot整合Redis的实战项目——"springboot-redisdemo",旨在帮助你深入理解和应用Redis。 首先,让我们详细探讨Redis的核心知识点: 1. **Redis的数据类型**:...

    尚硅谷Redis文档笔记

    尚硅谷Redis文档笔记

    Redis学习笔记.rar

    二、 redis学习笔记之数据类型 3 三、 redis学习笔记之排序 11 四、 redis学习笔记之事务 16 五、 redis学习笔记之pipeline 20 六、 redis学习笔记之发布订阅 23 七、 redis学习笔记之持久化 28 八、 redis...

Global site tag (gtag.js) - Google Analytics