Java面试题 (1) Redis中有哪些数据类型?

Java面试题 Redis中有哪些数据类型?

redis 支持 五种 数据类型:
string (字符串) ,hash(哈希),list(列表),set(集合),zset (有序集合)

string (字符串) (最常用)

string 是redis中最常用的数据类型,是二进制安全的。意思是redis的string可以存取任何数据。比如jpg图片或者序列化的对象。
string 类型是redis中最基本的数据类型,一个键最大能存储512MB。

字符串常用命令
对应命令解释
SET keyname value设置一个键值对,keyname为键名,value为储存的值
GET keyname 获取指定key对应的值,keyname为键值名
GETSET keyname value将指定key的值设为value,同时返回该key原来的旧值
MGET key1 key2...获取所有给定key的值
GETRANGE key start end获取指定key里的截取字符串,start为起始位置,end为结束位置
STRLEN keyname获取指定key里存储字符串的长度
INCR keyname给指定key里储存的数字增1
APPEND keyname value给指定key里面存储的字符串末尾加上value
Hash(哈希)(常用)

hash 是一个键值(key=>value)对集合。
hash 是一个 string 类型的key 和 value 的映射表 ,hash 适合储存对象,相当于java 中Map 集合。

哈希(hash)命令
命令描述
HMSET key field1 "value1"....同时将多个field-value(域-值)对设置到哈希表key中
HDEL key fileld1 fileld2 ....删除指定key哈希表的一个或者多个字段,key为哈希表的键,field为哈希表里的字段名
HEXSTS key field查看指定key的哈希表内是否存在field字段
HGET key field获取指定key的哈希表内是否存在field字段
HGET key field获取指定key的哈希表内field字段存储的值
HGETALL key 获取指定key 的哈希表的所有字段和值
HKEYS key获取指定 key 的哈希表中所有字段
HMGET key fileld1 fileld2 获取指定key的哈希表中所有指定字段的值
HVALS key 获取指定key的哈希表中所有的值
List (列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
列表最多可存储42949672元素,每个列表可存储40多亿。

列表(List)命令
命令描述
LPUSH key value1 value2....同时将一个或多个值插入到列表头部,设定的key即为列表的键
LPUSH key value1 value2....同时将一个或者多个值插入到已存在的key对应的列表头部
LPOP key移除并获取指定 key 的列表中的第一个元素
LINDEX key index通过索引获取指定key的列表中的元素,index从0开始
LRANGE key start stop通过索引获取指定key的列表中某个范围的元素
RPOP key移出并获取指定key的列表中最后一个元素
LREM key count value移出指定key的列表中,与value相等的元素 count>0 从表头开始搜索;count<0 从表尾开始搜索;count= 0 移出所有与value 相等的元素
LTRIM key start stop截取指定key的列表中的部分元素
Set (集合)

Redis的Set 是string类型的无序集合
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

集合(Set)命令
命令描述
SADD key m1 m2...向集合添加一个或多个成员
SCARD key获取指定key对应的集合内的成员数
SINTER key1 key2获取所有给定集合的交集
SISMEMBER key member 判断member元素是否是集合key的成员
SMEMBERS key返回集合中的所有成员
SPOP key返回并移出集合中的一个随机元素
SREM key member1 member2返回集合中的所有成员
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不像程序猿的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值