redis五种基本数据类型
1、string类:一个key对应一个value(key:value)。string类是二进制安全,可以包含任何数据(例如:图片、音乐)。
2、hash类:string类型field和value的映射表。特别适合存储对象。
3、list类:链表数据结构,主要功能push、pop、获取范围所有值。list类每个子元素都是string类型的双向链表。可以通过push、pop操作从链表头部或者尾部增加删除元素。这样子list既可以作为栈,也可以作为队列。
4、set类:set集合中元素是唯一不能重复,而且是无顺序。差集、交集、并集操作。
5、zset类:zset类是set集合的扩展,zset集合中元素是唯一不能重复,但是有顺序。zset类在set类基础上增加了一个顺序的属性
1.1、string类操作命令
set key value
setnx key value(nx代表not exist,不存在才增加键值)
setex (ex代表expire有效期,以时间秒为单位)
mset:一次性设置多键值
msetnx:(nx代表not exist,不存在才增加键值)
get key:获取值
mget:批量获取值
incr:对key的值做加操作(+1)
incrby:对key的值做指定值加操作(+x)
decr:对key的值做加操作(-1)
decrby:对key的值做指定值加操作(-x)
strlen:取指定key的value值长度
2.1、hash类操作命令
hset: 设置hash表。例如:hset hashtable field_1 value_1
hget:获取hash表
hsetnx: (nx代表not exist,hash表不存在才增加键值)
hmset:设置hash表多字段和值。例如:hset hashtable field_1 value_1 field_2 value_2
hincrby:设置hash表某字段值增加。例如:hincrby hashtable field 8
hexists:检查field是否存在
hdel:删除hash表字段
hkey:返回hash表的所有field字段
hvals:返回hash表的所有value值
hlen:统计hash表field个数
3.1、list类
lpush:往list头部添加元素。例如:lpush mylist "hello"
rpush:往list尾部添加元素。例如:lpush mylist "hello"
lrange:查询list元素。例如查询list全部元素:lrange mylist 0 -1
lset:设置指定下标的值
lrem:从list删除元素(rem:remove意思)
ltrim:保留知道范围内的元素
lpop:从list头部删除元素,并返回删除元素
rpop:从list尾部删除元素,并返回删除元素
rpoplpush:从第一个list的尾部移除元素,并添加第二个list的头部
lindex:返回list指定index元素
llen:返回list元素个数
4.1、set类
sadd:向set集合添加元素。例如:sadd myset "hello"
smembers:查询集合的成员
srem:删除集合的元素
spop:随机删除一个元素
sdiff:两个集合的查集
sdiff:两个集合差集,并将差集保存到另一个集合。 例如myset1和myset2差集保存到myset3:sdiffstore myset3 myset1 myset2
sinter:返回两集合的交集
sinterstore:两个集合交集,并将交集保存到另一个集合
sunion:返回两集合的并集
sunionstore:两个集合并集,并将并集保存到另一个集合
smove:将元素从一个集合移动到另一个集合。例如:smove myset1 myset2 "hello"
sismember:查看元素是否是集合元素
scard:查看元素个数
5.1、zset类
zadd:向set集合添加元素,添加元素时两个值(元素值、顺序值)。例如:zadd myset 1 "one"
zrange:查询集合元素。例如:zrange myset 0 -1 withscores
zrem:删除集合元素
zincrby:增加指定顺序值
zrank:依据索引排序
zrevrank:依据索引反序排序
zrevrange:依据索引降序排序
zrangebystore:返回集合中score在给定区间的元素,顺序排序。例如2-3是顺序区间:zrangebystore myset 2 3 withscores
zcount:返回集合中score在给定区间的数量。例如2-3是顺序区间:zcount myset 2 3 withscores
zremrangebyrank:删除集合中排名在给定区间的元素。例如:(1-1是代表索引:zremrangebyrank myset 1 1 )
zcard:返回集合元素个数。
redis五种基本数据类型的更多相关文章
- Redis五种常用数据类型
string 字符串常用操作 1.存入字符串键值对 SET key value 2.批量存储字符串键值对 MSET key value [key value ...] 3.获取一个字符串键值 G ...
- redis五种数据类型的使用(zz)
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用场景
string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- Redis五种数据类型-设置key的过期时间
1.redis命令客户端 [root@localhost bin]# ./redis-cli 127.0.0.1:6379> #是否运行着 127.0.0.1:6379> ping PON ...
- Redis(一)、Redis五种数据结构
Redis五种数据结构如下: 对redis来说,所有的key(键)都是字符串. 1.String 字符串类型 是redis中最基本的数据类型,一个key对应一个value. String类型是二进制安 ...
- 最全的Java操作Redis的工具类,使用StringRedisTemplate实现,封装了对Redis五种基本类型的各种操作!
转载自:https://github.com/whvcse/RedisUtil 代码 ProtoStuffSerializerUtil.java import java.io.ByteArrayInp ...
- Redis五种数据结构简介
Redis五种结构 1.String 可以是字符串,整数或者浮点数,对整个字符串或者字符串中的一部分执行操作,对整个整数或者浮点执行自增(increment)或者自减(decrement)操作. 字符 ...
- redis 五种数据结构详解(string,list,set,zset,hash)
redis 五种数据结构详解(string,list,set,zset,hash) Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存 ...
随机推荐
- [Lua]mac 上安装lua
mac 安装lua google了好个看起来都不怎么好操作.这个是在命令行下操作的非常easy. curl -R -O http://www.lua.org/ftp/lua-5.2.3.tar.gz ...
- oracle sql 优化大全
转自: http://panshaobinsb.iteye.com/blog/1718233 http://yulimeander.blog.sohu.com/115850824.html 最近遇到了 ...
- Delphi 6 保存窗体设置
DSK Desktop Setting File 保存工程文件的桌面摆布情况, 下次打开时可以恢复上次保存的桌面状态 Desktop文件.保存了IDE的布局(也可能包含浏览记号,视乎IDE的设定),为 ...
- TYVJ P1933 绿豆蛙的归宿 题解(未完成)
P1933 「Poetize3」绿豆蛙的归宿 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找 ...
- Liunx下文件权限详解
刚接触Linux时对Linux下的文件权限的概念一直很模糊,观念还一直停留在windows下,所以有很多操作一直提示权限不够.为了弄懂文件权限问题我查找了很多资料整理如下,我把这些学习笔记贴出来和大家 ...
- Qt Creator的安装与Qt交叉编译的配置
Qt Creator 的安装 到Qt官网下载Qt Creator https://www.qt.io/download-open-source/ 其它旧版本点击Achieve连接下载 或登录http ...
- Echarts动画效果:实现数据左右移动
1.业务背景 图形实时从后台获取数据,让图形从最右边出现,每隔一秒向左移一位,当最左边的数据移到Y轴时,最左边的数据移出屏幕,最右边增加一个数.实现一个从右往左动画的效果 2.先看下项目中的demo解 ...
- IE、火狐导入收藏夹乱码解决方案
IE收藏夹导入Firefox书签后出现乱码的原因在于两个浏览器的收藏夹的html文件的编码方式不同,Firefox使用的是UTF-8编码,而IE是ASCII编码.故两者的收藏夹文件互相导入的时候会出现 ...
- TextView子类的常用属性
TextView常见的子类包括EditText,Button,CheckBox, RadioButton等. 1.EditText EditText继承自TextView,因此TextView所有属性 ...
- Report Studio中目录结构报表浅析
一:场景:在一个报表中如果存在多个页面,每个页面显示不同的数据,如何通过目录控件实现对每一个报表的友好访问呢?下面我们就来看一下下面的效果,如下图1,2 图1:-------------------- ...