Redis的五大数据类型

Posted 穿黑风衣的牛奶

tags:

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

Redis的五大数据类型

key指令(非数据类型)

keys * 查看所有的key

exists key的名字 查看某个key是否存在

move key db 将某个key及对应的值从当前库移动到某个库

expire key 秒钟 设置key的过期时间(过期不代表删除 仍然存在库中)

ttl key 查看还有多久过期 (-1代表永不过期 -2代表已经过期)

type key 查看key的类

String

String类型总结来说就是单值单类型,key-Value。string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。

使用:设置值 set key value 取值 get key

List

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边),key是数组名

使用 LPUSH key value1 例如: LPUSH key value1 ,LPUSH key value2,LPUSH key value4

LRANGE key 0 10 就取出了名称为key的数组中前10个元素,redis中还提供了一系列类似数组操作的命令,具体可以查询api 例如 LINDEX key index 通过索引获取列表中的元素等等 LPOP key 移出并获取第一个元素,RPOP key 移除列表的最后一个元素,返回值为移除的元素。

Set

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。‘可以看成一个不允许重复元素的List

redis 127.0.0.1:6379> SADD runoobkey redis
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mongodb
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS runoobkey

1) "mysql"
2) "mongodb"
3) "redis"

Hash

Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。 说白了,redis中的hash本质上还是一个key-value 但是value也是一个键值对

redis 127.0.0.1:6379> HMSET runoob field1 "Hello" field1 "Helloworld" field2 "World"
"OK"
redis 127.0.0.1:6379> HGET runoob field1
"Hello"
"Helloworld"
redis 127.0.0.1:6379> HGET runoob field2
"World"

Zset

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。

zadd key score member 

实例

redis 127.0.0.1:6379> zadd runoob 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd runoob 30 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> > ZRANGEBYSCORE runoob 0 20
1) "rabitmq"
2) "redis"

以上是关于Redis的五大数据类型的主要内容,如果未能解决你的问题,请参考以下文章

Redis五大数据类型之Zset

Redis五大数据类型之Hash

Redis五大数据类型之Set

Redis五大数据类型的常用操作

七天玩转Redis | Day2 Redis五大数据类型

七天玩转Redis | Day2 Redis五大数据类型