redis中的数据基础查询命令有哪些

Redis中的数据基础查询命令

Redis是一个基于内存的数据存储系统,因为是内存读写操作,被相应的称为非关系型数据库(NoSQL)。其中,Redis的基础查询命令涉及到5个方面:字符串(String)、哈希(Hash)、列表(List)、集合(Set)以及有序集合(Sorted Set)。下面将一一介绍这五个部分的查询命令。

1. 字符串(String)

字符串是Redis最基本的数据类型,字符串类型是二进制安全的。在Redis查询字符串时,主要有以下4个命令:

GET key

该命令用于获取指定key的数据内容。以下示例演示了如何获取key为name的数据内容:

127.0.0.1:6379> SET name "John"

OK

127.0.0.1:6379> GET name

"John"

SET key value

该命令用于设置一个key的数据内容。以下示例演示了如何设置key为name的数据内容:

127.0.0.1:6379> SET name "John"

OK

127.0.0.1:6379> GET name

"John"

MSET key value [key value ...]

该命令用于设置多个key的数据内容。以下示例演示了如何设置key为name、age、gender的数据内容:

127.0.0.1:6379> MSET name "John" age 18 gender "male"

OK

127.0.0.1:6379> MGET name age gender

1) "John"

2) "18"

3) "male"

INCR key

该命令用于将key对应的数字值增加1。以下示例演示了如何将key为counter的值增加1:

127.0.0.1:6379> SET counter 10

OK

127.0.0.1:6379> INCR counter

(integer) 11

2. 哈希(Hash)

哈希类型是Redis的一个键值对类型,适用于存储对象。以下是哈希中常用的3个命令:

HSET key field value

该命令用于为指定键的hash对象添加一个field/value键值对。以下示例演示了如何添加一个key为person1的hash对象中的name属性:

127.0.0.1:6379> HSET person1 name John

(integer) 1

127.0.0.1:6379> HGET person1 name

"John"

HGET key field

该命令用于获取指定键的hash对象中的field键对应的value值。以下示例演示了如何获取key为person1的hash对象中的name属性:

127.0.0.1:6379> HSET person1 name John

(integer) 1

127.0.0.1:6379> HGET person1 name

"John"

HGETALL key

该命令用于获取指定键的hash对象中的所有field和value键值对。以下示例演示了如何获取key为person1的hash对象中所有的键值对:

127.0.0.1:6379> HSET person1 name John age 18 gender male

(integer) 3

127.0.0.1:6379> HGETALL person1

1) "name"

2) "John"

3) "age"

4) "18"

5) "gender"

6) "male"

3. 列表(List)

列表类型是Redis的一个有序的字符串列表。主要有以下几个常用命令:

LPUSH/RPUSH key value

该命令用于向列表的最左/右边添加元素。以下示例演示了如何向名为list1的列表中插入元素:

127.0.0.1:6379> LPUSH list1 "John"

(integer) 1

127.0.0.1:6379> RPUSH list1 "Catherine"

(integer) 2

127.0.0.1:6379> LRANGE list1 0 -1

1) "John"

2) "Catherine"

LPOP/RPOP key

该命令用于弹出列表的最左/右元素。以下示例演示了如何删除名为list1的列表最左边的元素:

127.0.0.1:6379> LPUSH list1 "John"

(integer) 1

127.0.0.1:6379> LPUSH list1 "Catherine"

(integer) 2

127.0.0.1:6379> LPOP list1

"Catherine"

127.0.0.1:6379> LRANGE list1 0 -1

1) "John"

4. 集合(Set)

集合类型是Redis一个无序的字符串集合,主要有以下几个常用命令:

SADD key member [member ...]

该命令用于向指定集合中添加元素。以下示例演示了向名为set1的集合中添加元素:

127.0.0.1:6379> SADD set1 "John" "Catherine" "Matthew"

(integer) 3

127.0.0.1:6379> SMEMBERS set1

1) "Matthew"

2) "Catherine"

3) "John"

SISMEMBER key member

该命令用于判断指定元素是否存在于指定集合中。以下示例演示了判断名为set1的集合中是否存在John这个元素:

127.0.0.1:6379> SADD set1 "John" "Catherine" "Matthew"

(integer) 3

127.0.0.1:6379> SISMEMBER set1 "John"

(integer) 1

127.0.0.1:6379> SISMEMBER set1 "Michael"

(integer) 0

5. 有序集合(Sorted Set)

有序集合类型是Redis的一个有序的字符串集合,每个元素都会被赋予一个得分,通过该得分来进行从小到大的排序。主要有以下几个常用命令:

ZADD key score member [score member ...]

该命令用于向指定集合中增加元素。元素可以根据分值自动排序。以下示例演示了向名为zset1的有序集合中添加元素:

127.0.0.1:6379> ZADD zset1 60 "John"

(integer) 1

127.0.0.1:6379> ZADD zset1 90 "Catherine"

(integer) 1

127.0.0.1:6379> ZADD zset1 80 "Matthew"

(integer) 1

127.0.0.1:6379> ZRANGEBYSCORE zset1 80 100

1) "Matthew"

2) "Catherine"

ZSCORE key member

该命令用于获取指定元素的分值。以下示例演示了获取名为zset1的有序集合中John元素的分值:

127.0.0.1:6379> ZADD zset1 60 "John"

(integer) 1

127.0.0.1:6379> ZSCORE zset1 "John"

"60"

以上便是Redis中常见的基础查询命令,涉及到5个基本数据类型的增删改查操作。在实际开发和运维过程中,运用Redis的命令能够更高效地操作数据,为业务提供更好的支持。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

数据库标签