redis mysql查询数据类型_Redis的数据类型

一、数据结构

Redis是key-value的数据结构,每条数据都是一个键值对

键的类型是字符串

注意:键不能重复,重复的话会覆盖之前的值

值的类型分为五种:

字符串string

哈希hash

列表list

集合set

有序集合zset

ca1ce05d5c747d002bf75fb87be37760.png

0.键命令

在redis里面,除了"\n"和空格不能作为名字的组成内容外,其他内容都可以作为key的名字部分。名字长度不做要求。

查找键,参数支持正则表达式

keys pattern

900cf7ba08237a5d6ead0c9932f47860.png

2643a0db9fc352cacea7c542840f9900.png

6b00793bc30e6db014aa5c1472cfd1ae.png

判断键是否存在,如果存在返回1,不存在返回0

exists key1

09c97f60844d605b814b7d9b7e08ab50.png

查看键对应的value的类型

type key

e12593c0a91f8b25a4779670677257c2.png

删除键及对应的值

del key1 key2 ...

671aa96df84f272f773d9a4b705b3419.png

94923977c534a70b9d25cd58564474e8.png

设置过期时间,以秒为单位

如果没有指定过期时间则一直存在,直到使用DEL移除

expire key seconds

52eec6f500d2d4ee1ef19ff120666602.png

查看有效时间,以秒为单位

ttl key

66bb767158b523cb186d0a72c3247b0a.png

2603c93ae179037acbb5593fdebcc4d1.png

其他keys键操作

改名字

rename oldkey newkey

返回当前数据库的key数量

dbsize

选择数据库,最多有16个数据库供选择,默认的数据库为0

select dbindex

将key从当前数据库移动到指定数据库

move key dbindex

删除当前数据库中所有key

flushdb

删除所有数据库中的所有key

flushall

1.string类型

字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或JSON对象描述信息等。在Redis中字符串类型的value最多可以容纳的数据长度是512M。

1.1保存

设置键值,如果设置的键不存在则为添加,如果设置的键已经存在则为修改

set key value

8c79796848dbb442b98691b487445b4d.png

设置键值及过期时间,以秒为单位

setex key seconds value

f73f55def8424924f7834f54fd4bd74f.png

b295ee8e65054679327da74c2ae0019d.png

450e5cfe5037cdc150cc21b6dd1659d5.png

设置多个键值

mset key1 value1 key2 value2

5828e1deaef01cc89af701ce6f95e106.png

追加值

append key value

1d530b5e52ce5d4f5b1139972f062ca7.png

1.2获取

根据键获取值,如果不存在此键则返回nil

get key

63cbb27bda799073cae67e4c90e84527.png

根据多个键获取多个值

mget key1 key2 ...

6a9815379830d7137f1bc7f240362934.png

2.hash

2.1hash类型

hash用于存储对象,对象的结构为属性、值

值的类型为string

2.2增加、修改

设置单个属性

hset key field value

例1:设置键xiaomin的属性height为180

hset xiaomin height 180

12528ad28f3f3d42360210781dfcb61b.png

报错解决办法

94efbc92e32dff6b460f2a26baf76abb.png

设置多个属性值

hmset key field1 value1 field2 value2

··

e628c2451653b085ab779abd336755c0.png

2.3获取

获取指定键所有的属性

hkeys key

2420934b1b7eb7eba685369dba062bd2.png

获取一个属性的值

hget key field

1e74f28e2798dc578e9d12f236a6ccaf.png

获取多个属性的值

hmget key field1 field2...

855c87854335dec2a69fab928402e73a.png

获取所有属性的值

hvals key

9785aad60477c54ea3a9a67aa7c23637.png

2.4删除

删除整个hash键及值,使用del命令

删除属性,属性对应的值会被一起删除

hdel key field1 field2...

47159bfe5cba55a79fd779fc3660eeae.png

3.list

3.1增加

在左侧插入数据

lpush key value1 value2...

608eada90837c51307d416d784331a6b.png

取列表中所有的值:

40e607dd5a2c3f35ead978974e143d5f.png

在右侧插入数据

rpush key value1 value2...

0791d45ad3bf70c787c0d3285f51ca87.png

在指定元素的前或者后插入新元素

linsert key before或after 现有元素 新元素

4967b5079710da15e10ed5aeb4e6ac76.png

a29173fe1f0aa472d09dd4e3e50e33bd.png

3.2获取

返回列表里指定范围内的元素

start、stop为元素的下标索引

索引从左侧开始,第一个元素为0

索引可以是负数,表示从尾部开始计数,如-1表示最后一个

lrange key start stop

8b1cb874883beb9867a995f6f8ebca66.png

3.3设置指定索引位置的元素值

索引从左侧开始,第一个元素为0

索引可以是负数,表示尾部开始计数,如-1表示最后一个

lset key index value

f89c5e7c7d8997724489b1444afc4356.png

e76a00ce6a60484bc86e2fec650f51f4.png

3.4删除

删除指定元素

将列表中前count次出现的值为value的元素移除

count>0:从头往尾移除

count<0:从尾往头移除

count=0:移除所有

lrem key count value

c7374c7554c762c46b57877bc7074b70.png

8af9f2e7ecd1cf8b95516a32137f4090.png

358123bcd9555110cf231ba358b3d3d2.png

4.set

无序集合

元素为srting类型

元素具有唯一性,不重复

说明:对于集合没有修改操作

4.1 增加

添加元素

sadd key member1 member2...

de9e55e6350226fe4970b944e2cf997c.png

4.2获取

返回所有的元素

smembers key

4c0bcbe744214c0a0d7bc891de4fe604.png

4.3删除

删除指定元素

srem key

d46e903f1f4f6d170c70c199f671b3a5.png

44eb2abbef0b9e64872616ce3e0b1daa.png

5.zset

sorted set,有序集合

元素为string类型

元素具有唯一性,不重复

每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序

说明:没有修改操作

5.1增加

添加

zadd key score1 member1 score2 member2...

fb97267227e2102ec18eb59d7dc170c8.png

61c765c9d5fbf55f8c7d9239c6580d8f.png

5.2获取

返回指定范围内的元素

start、stop为元素的下标索引

索引从左侧开始,第一个元素为0

索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素

zrange key start stop

8955538bc9bdd6fafc1870a6a2507fe4.png

6562fc2c865ab10ffda972e2eaf0fd64.png

返回score值在min和max之间的成员

zrangebyscore key min max

e4134efa7f14eae14d83f50cb06e0646.png

0532b646e9fb1a0e21417b702493da5f.png

返回成员member的score值

zscore key member

e31e2bf2f4ff1eb8341f7675c6f91fd2.png

8bdfbfedc87be59f0d0a285d5f2992e2.png

5.3 删除

删除指定元素

zremkey member1 member2...

ad83c2d62b78a9e588912b855c572df5.png

e3a05e30a16c4d8e87743a573efbf7f8.png

删除权重在指定范围的元素

zremrangebyscore key min max

f609ec59dbaad8b3369a4a275d1b06f7.png

8fb834305b6c976e97d54dc57c3f7dcf.png

68f724bad5a33d9a9f6bd2ca7369ecb7.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值