二、Redis的数据类型

本文介绍了Redis支持的五种主要数据类型:字符串(string)、哈希(hash)、列表(list)、集合(set)以及有序集合(zset),详细讲解了每种类型的特点、操作方法和示例。
摘要由CSDN通过智能技术生成

二、Redis的数据类型

回顾Mysql支持的数据类型

int
varchar
date/datetime/timestamp
blob
decimal

更多玩法

https://www.runoob.com/redis/redis-tutorial.html

Redis支持五种数据类型:

string(字符串),
hash(哈希),
list(列表),
set(集合)及 
zset(sorted set:有序 集合)。
String(字符串)

string 是 redis 最基本的类型。

redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。

string 类型的值最大能存储 512MB。

代码
127.0.0.1:6379> SET username 张三
OK
127.0.0.1:6379> GET username
"张三"
Hash(哈希)

如同java的hashmap,可以存多对数据。

代码
127.0.0.1:6379> DEL myclass

127.0.0.1:6379> HMSET myclass 
num01 James num02 Wade
OK

127.0.0.1:6379> HGET myclass num01

每个 hash 可以存储 232 -1 键值对(40多亿)。

hashmap的键不能重复。

List(列表)

和Java的ArrayList类似。Redis 列表是简单的字符串列表,按照插入顺序排序。

数据可以重复。

代码(l=list)
127.0.0.1:6379> DEL shoppingList
127.0.0.1:6379> lpush shoppingList yagao
(integer) 1
127.0.0.1:6379> lpush shoppingList maojin
(integer) 2
127.0.0.1:6379> lpush shoppingList lianpeng
(integer) 3
127.0.0.1:6379> lrange shoppingList 0 10 
1) "lianpeng"
2) "maojin"
3) "yagao"
127.0.0.1:6379>

常见命令:

lpush key value 将一个或多个值插入到列表头部
LRANGE key start stop 获取列表指定范围内的元素
llen key 获取列表长度
LPOP key 移出并获取列表的第一个元素
(popup=弹出)
LINDEX key index 
通过索引获取列表中的元素,可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
Set(集合)

Redis 的 Set 是 string 类型的无序不重复集合。

代码
127.0.0.1:6379> DEL furniture
127.0.0.1:6379> sadd furniture sofa
(integer) 1
127.0.0.1:6379> sadd furniture TV
(integer) 1
127.0.0.1:6379> sadd furniture fridge(integer) 1
127.0.0.1:6379> sadd furniture TV
(integer) 0
127.0.0.1:6379> smembers furniture
zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。
zadd 命令

添加元素到集合,元素在集合中存在则更新对应score

zadd key score member 
实例
127.0.0.1:6379> DEL furniture2
127.0.0.1:6379> zadd furniture2 1 TV
(integer) 1
127.0.0.1:6379> zadd furniture2 2 shafa
(integer) 1
127.0.0.1:6379> zadd furniture2 3 bed
(integer) 1
127.0.0.1:6379> zadd furniture2 4 shafa
(integer) 0
127.0.0.1:6379> ZRANGEBYSCORE furniture2 1 10
注意:1和10此时指的是score值,不是下标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值