《Redis内存数据库》Redis数据类型和基本操作
前言
redis 有多种数据类型,兼容应用的开发。
说明
第一种数据类型:string(字符串)
set key value -- 设置key和key对应的value值
get key -- 获取key对应的value值
案例:

incr key ---对应的value 自增1,如果没有这个key值 自动给你创建创建 并赋值为1
decr key ---对应的value 自减1

incrby key num ---对应的value 增num
decrby key num ---对应的value 减num

mset key1 value1 key2 value2 一次设置多个值
mget key1 key2 一次查询多个值

setrange key offset value:把字符串的offset偏移字节改成value,如果偏移量 > 字符串长度,该字符自动补0x00

append key value :把value追加到key 的原值上

getrange key start stop:获取字符串中[start, stop]范围的值

getset key nrevalue:返回旧值并设置新值

incrbyfloat key 0.7: 自增浮点数

strlen key:取指定key的value值的长度

setex key time value:设置key对应的值value,并设置有效期为time秒。

ttl key 查询剩余有效时间

第二种数据类型:hash(字典)
案例:
hset key filed value -- 设置hash的键值。
hget key filed -- 获取hash的值。

HMSET key field value [field value ...] -- 批量设置hash的键值
HMGET key field [field ...] -- 批量查询hash的值

HGETALL key -- 查询key的全部键值对信息

HDEL key field [field ...] -- 删除hash中的其中一个或者多个键值对

HEXISTS key field -- 是否存在默个键值对

HKEYS key -- 查询hash 的全部键值信息

HVALS key -- 查询hash 的全部键值对应的value信息

HINCRBY key field increment -- 某一个键值上加increment 偏移量
HINCRBYFLOAT key field increment -- 某一个键值上加increment 浮点数的偏移量

HLEN key -- 哈希键对应的键值对数量

HSETNX key field value -- hash的键不存在时才加入并赋值。

第三种数据类型:list(列表)
结构:
key value
key [6 , 5 , 4 , 3 , 2 , 1]
下标 0 1 2 3 4 5(-1)
案例:
LPUSH key value [value ...] -- 写入数据到list, 先进先出原理

LINDEX key index -- 查询list 某个下标的数据

LRANGE key start stop -- 查询list 数据。

LPUSHX key value -- 存在键加入,不存在不创建key值。

LINSERT key BEFORE|AFTER pivot value -- 在某个元素之前或者之后插入数据

RPUSH key value [value ...] -- 将数据插入链表,链表是先进先出

RPUSHX key value -- 存在key 则插入,否则无效,链表的操作。

RPOPLPUSH source destination -- 复制list的最后一个数据

LREM key count value -- 删除count个元素。

LTRIM key start stop -- 保留从start到stop的元素

LSET key index value -- 修改某个角标上的值。

LPOP key -- 获取第一个元素,并且删除。

第四种数据类型:set(集合)
结构:
key value
key (zhangsan , lili , hanmeimei, lilei )
案例:
sadd key member [member ...] -- 添加数据到set可以多个

SCARD key -- 查询set数量

SMEMBERS key -- 查询集合中的全部元素

SUNION key [key ...] -- 获取多个集合的并集。

SINTER key [key ...] -- 获取多个集合的交集

SDIFF key [key ...] -- 第一个key 和其他key的差级

SDIFFSTORE destination key [key ...] -- 将差集的值,存入destination集合中

SINTERSTORE destination key [key ...] -- 将交集的值,存入destination集合中

SUNIONSTORE destination key [key ...] -- 将并集的值,存入destination集合中

SISMEMBER key member -- 判断集合中是否在member 成员

SMOVE source destination member -- 移动成员从集合到另一个集合

SPOP key [count] -- 随机删除count个元素,并且返回被删除的元素

SRANDMEMBER key [count] -- 顺序返回count个元素

SREM key member [member ...] -- 删除集合元素

SSCAN key cursor [MATCH pattern] [COUNT count] -- 迭代集合的元素

第五种数据类型:sortset(有序集合)
结构:
key value
key (scores zhangsan ,scores lili ,scores hanmeimei,scores lilei )
0 1 2 3(-1)
案例:
ZADD key [NX|XX] [CH] [INCR] score member [score member ...] -- 增加一个带数量的元素

ZINCRBY key increment member -- 给某个元素设置数量

ZREVRANGE key start stop [WITHSCORES] -- 排序显示集合元素, WITHSCORES 表示额外打印分数

ZCARD key -- 查询有序集合元素

ZCOUNT key min max -- 查询在min到max区间内的元素个数

ZRANGE key start stop [WITHSCORES] -- 根据脚标查询有序集合,WITHSCORES带分数显示。

ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] -- 通过分数返回元素,WITHSCORES带分数显示

ZRANK key member -- 获取有序集合指定元素的角标。

ZREM key member [member ...] -- 按照元素名称移除指定元素
ZREMRANGEBYSCORE key min max -- 按照分数范围移除指定元素

ZREVRANK key member -- 获取某个元素的排名

ZSCORE key member -- 获取某个元素的分数

其他特殊点:
cat /tmp/data.txt | redis-cli -a 123456 -- 将文件data.txt的redis命令交给redis-cli 执行。
总结
Redis的这些数据类型都是为了满足当前互联网的需求,简化一些特定场景的数据操作,并且快速。
参考:http://doc.redisfans.com/list/blpop.html
《Redis内存数据库》Redis数据类型和基本操作的更多相关文章
- Redis 中的数据类型及基本操作
Redis 内置的数据类型有 5种:字符串String.哈希Hash.列表List.集合Set.有序集合ZSet 字符串类型 String 是 Redis 中最基本的类型,一个 key 对应着一个 v ...
- Redis 键值数据类型及基本操作
到目前为止,Redis 支持的键值数据类型如下: 字符串(String) 哈希(Map) 列表(list) 集合(sets) 有序集合(sorted sets) 1. String 字符串类型 s ...
- Redis数据类型的基本操作
Redis数据类型的基本操作 一.string类型 1.设置value
- Redis的各种数据类型到底能玩出什么花儿?
https://mp.weixin.qq.com/s/ZSQ9vCkWXYuLrKS0UJ4RIg 两个星期终于肝了出来,Redis相关问题脑图,终于整理完了!!! 文末无套路分享~~附获取方式 Re ...
- Redis内存数据库在Exchange会议室的应用
本文论述了现有Exchange会议室应用现状和不足之处,并详细介绍了Redis内存数据库在Exchange会议室的应用,并给出了一种高性能的应用架构及采用关键技术和关键实现过程,最终实现大幅改进系统性 ...
- 支持持久化的内存数据库-----Redis
一.Redis概述 1.1.什么是Redis Redis是一种高级key-value数据库.它跟memcached类似,不过数据 可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合 ...
- Redis进阶实践之四Redis的基本数据类型
一.引言 今天正式开始了Redis的学习,如果要想学好Redis,必须先学好Redis的数据类型.Redis为什么会比以前的Memchaed等内存缓存软件使用的更频繁,适用范围更广呢?就是因为R ...
- Redis进阶实践之四Redis的基本数据类型(转载4)
Redis进阶实践之四Redis的基本数据类型 一.引言 今天正式开始了Redis的学习,如果要想学好Redis,必须先学好Redis的数据类型.Redis为什么会比以前的Memchaed等内存缓存软 ...
- 什么是redis?Reids的特点是什么?Redis支持的数据类型有哪些?
首先,分布式缓存框架 可以 看成是nosql的一种 (1)什么是redis? redis 是一个基于内存的高性能key-value数据库. (有空再补充,有理解错误或不足欢迎指正) (2)Reids的 ...
随机推荐
- Promise.then返回的是什么?
console.log((function cook(){ console.log('开始做饭.'); var p = new Promise(function(resolve, reject){ / ...
- js使用html2canvas 生成图片然后下载
1:html2canvas官网 首先去官网把这个JS下载下来 <!DOCTYPE html> <html lang="en"> <head> & ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统 | 控制反转搭配简单业务
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 说明 我们上一节已经成功通过 连接提供程序存储库,获取到了 连接提供程序,但是连接提供程序和数据库连接依赖太深, ...
- 简单的股票信息查询系统 1 程序启动后,给用户提供查询接口,允许用户重复查股票行情信息(用到循环) 2 允许用户通过模糊查询股票名,比如输入“啤酒”, 就把所有股票名称中包含“啤酒”的信息打印出来 3 允许按股票价格、涨跌幅、换手率这几列来筛选信息, 比如输入“价格>50”则把价格大于50的股票都打印,输入“市盈率<50“,则把市盈率小于50的股票都打印,不用判断等于。
'''需求:1 程序启动后,给用户提供查询接口,允许用户重复查股票行情信息(用到循环)2 允许用户通过模糊查询股票名,比如输入“啤酒”, 就把所有股票名称中包含“啤酒”的信息打印出来3 允许按股票价格 ...
- 2020.5.23 第三篇 Scrum冲刺博客
Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.每日站立会议 二.项目燃尽图 三.签入记录 3.1 代码/文档签入记录 3.2 主要代码截图 3.3 程序运行截图 ...
- Discovering Reinforcement Learning Algorithms
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2007.08794v1 [cs.LG] 17 Jul 2020 Abstract 强化学习(RL)算法根据经过多年研究手动发 ...
- 关于C#.WinForm 与 WinApi的SendMessage 方法
介绍: Windows Api 的 SendMessage 该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.而和函数PostMessage不同,P ...
- springboot-swagger配置
原文地址 https://www.cnblogs.com/softidea/p/6251249.html https://www.cnblogs.com/xiebq/p/9181517.html 1p ...
- C# 解析获取Url参数值
今天遇到一个需求,需要处理通过接口传过来的一个参数,参数内容为一个拼接好的Url地址,且该地址还会携带了一些额外的参数,包括但不限于数字,字符串,json串.样例如下: http://www.cple ...
- 新手oracle重启、监听
有一次遇到了记录下. #su到oracle用户下 [root@localhost ~]# su - oracle #重启数据库:[oracle@localhost ~]$ sqlplus /nolo ...