redis使用

使用 StackExchange.Redis 在 C# 中开始使用 Redis Redis(Remote Dictionary Server)是一个开源的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis 支持多种类型的数据结构,如字符串(strings)、哈希表(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)与位图(bitmaps)、超日志(hyperloglogs)和地理空间(geospatial)索引半径查询等。 阅读详情

1 string 字符串 key value

set key value

set key value //设置key对应值为value
get key   //获取值
getrange key start end  //返回字符串中的一部分 getrange str1 0 -1 //截取字符串
getset key value //设置指定key的值,并返回旧值
mset key value key value //一次设置多个键值对
setnx key value  //只有key不存在的时候才能设置成功
msetnx key value key value //一次设置多个键值对,只有所有的key都不存在的时候才会成功
mget key key //一次得到多个值
strlen key  //获取key的字符串长度
setrange key 5 xdl //字符串替换,从第5位开始替换xdl
setex key 30 value //设置一个key并且设置一个过期时间(秒)
pserex key 2000 value //以毫秒为单位设置key的生存周期
incr key  //对key中存储的数字加1 ,key如果不存在,则会先初始化为0,在进行incr操作
incrby key 5 //将key中存储的数字加上指定增量
incrbyfloat key 0.5 //将key中存储的数字加上指定浮点数
decr key //将key中存储的数字减1
decrby key 5 //将key中存储的数值减指定值
append key value  //将值追加到字符串末尾

2 list 列表 key value value value //元素可重复出现

lpush key value value

lpush key value value //向列表左端添加元素
rpush key value value //向列表右端添加元素
lrange key start stop //获取列表片段 lrange key 0 -1查看所有
lpushx key value //向列表头部添加元素,只有key存在才添加
rpushx key value //向列表尾部添加元素,只有key存在才添加
lpop key //将列表头部的元素弹出
rpop key //将列表尾部的元素弹出
llen key //获取列表长度
lrem key count value //删除列表中的指定值
	count >0 :从列表头部开始,向尾部搜索,移除与value相等的元素,移除count个
	count <0 :从列表的尾部开始,向头部搜索,,移除与value相等的元素,移除count个
	count = 0:移除列表中所有与value相等的元素 lrem list3 0 d
lindex key index //获取指定索引元素上的值 lindex list3 3
lset key index value //设置指定元素的值 lset list3 10 a
ltrim key start stop  //只保留列表片段 ltrim list3 0 3 // ltrim list3 2 -1
linsert key before|after pivot value //向列表中插入元素
	linsert list4 before 'b' 'x'
	linsert list4 after  'b' 'x'
rpoplpush list5 list6 :将元素从一个列表转移到另一个列表 list5最右转移到list6的最左

3 set 集合 key value value1 value2 //元素不可重复出现

sadd key value value1 value2

sadd key value value1 value2 //向集合中添加一个/多个元素
smembers key //返回指定集合中的元素
sismember key value //检查value是否是集合中的成员
srem key value //删除集合中的一个或多个成员
spop key //删除并返回集合中的随机元素
srandmember key count  //随机返回集合中元素
	count 为正数,而且小于集合中的元素,返回一个长度为count的随机元素的集合数组,
	count 数大于集合中的个数的时候,返回整个集合
	count 为负数,返回一个数组,数组中的成员可能出现重复,数组的长度是count的绝对值
sdiff key key //返回集合的差集
	sadd set2 a b c d 
	sadd set3 c d e f 
	sadd set4 a e 
	sdiff set2 set3  //返回a b
	sdiff set2 set3  //返回e f
	sdiff set2 set3 set4  //返回 b
sinter set2 set3 ... //返回集合的交集 c d
sunion set2 set3 //返回给定集合的并集 a b c d e f 
scard key  //返回集合中元素个数
sdiffstore newset set2 set3 //将差集的结果保存到指定的集合当中a b
sinterstore newset set2 set3 //将交集的结果保存到指定的集合当中 c d
sunionstore newset set2 set3 //将并集的结果保存到指定的集合当中 a b c d e f 
smove set2 set3 a  //将set2集合中的元素a移动另一个set3集合中

4 hash 散列 key field1 value field2 value

hmset h1 username zhangsan pwd 123456

hset h1 username zhangsan //将哈希表中的key中的field设置成指定的value
hget key field //返回哈希表key中给的field的值 hget h1 username
hsetnx key field value //将hash表中的field设置成指定的值,只有field不存在才能成功,如果field存在,操作无效
	hsetnx h1 age 20  //
	hsetnx h1 aaa 21  //失败 因为已经有age了
hmset key field1 value field2 value //通过多个 field value设置到hash表key中
hmget key field1 field2 //一次获得hash表key中多个field的值
hgetall key //返回hash表key中所有的field和value
hkeys key //返回hash表key中的所有的field
hvals key //返回hash表key中所有的value对应值
hexists key field //检测hash中key的field是否存在
hlen key //返回hash表key中的field的数量
hincrby key field 3//给hash表key中的field的值做增量操作 hincrby h3 age 3
hincrbyfloat key field 0.5 //给hash表key中的field做增量浮点操作 hincrbyfloat h3 age 0.5
hdel key field1 field2 ... //删除hash中key的指定field,可删除一个或多个

5 zset 有序集合 key score value //value唯一不可重复出现

zadd zset 100 zhangsan 90 lisi 80 wangwu

zadd key score value1 ... score value2 //将元素添加到集合中
zscore key value1 //获得指定元素的分数 zscore zset zhangsan
zrange key start stop [withscores] //按照元素score排序返回指定start到stop之间的value
	zrange zset 0 -1  //返回所有
	zrange zset 0 -1 withscores  //带分数返回所有
	zrange zset 0 5 withscores   //带分数返回0-5位
	注意:当两个元素的分值相同的时候,redis在排序按照字典的顺序(0<9<a<z<a<z),如果使用的是utf-8的编码方式同样会按照中文字典的方式排序
zrevrange key start stop [withscores] //和zrange相反,按照分值从大到小排序
zrangebyscore key 80 100 [withscores] [limit 0 5] //获得指定分数范围的元素,按照分值从小到大排序,返回的是分值的指定80到100的元素,只显示limit 0-5条
	zrangebyscore zset 70 (90 withscores limit 0 3 //注意: 通过(代表不包含 90
zrevrangebyscore  key max min [withscores] [limit 0 5] //和zrangebyscore相反,按照分值从大到小排序
zincrby key 3 value //操作元素的分值,可以为负数为其减分,返回操作之后的分数 
	zincrby zset 10 zhangsan
	zincrby zset -20 lisi
zcard key //获取集合中的元素数量
zcount key min max  //获取分数内的元素数量
	zcount zset 70 90  //包含70 90的数量
	zcount zset (70 (90 //不包含70 90的数量
zrem key value1 value2... //删除一个或多个元素,返回删除元素的数量
zremrangebyrank key start stop //按照排名范围删除元素,按照分数从小到大的顺序删除指定的排名范围内的所有元素
	zadd zset1 1 a 2 b 3 c 4 d 5 e 6 f 7 g 8 h
	zremrangebyrank zset1  1 3  //删除b c d
	zremrangebyrank zset1  0 -1  //删除所有
zremrangebyscore key min max //按照分数范围删除元素
	zremrangebyscore zset1  3 7 //删除score3-7的,即为c d e f g
zrank key value //获取指定元素value的排名,根据分数从小到大的顺序 //排第几,从0开始数
zrevrank key value  //与zrank相反,获取指定元素排名.根据分数从大到小的顺序 
zinterstore newkey numkeys key1 key2... [weights weight weight] [aggregate sum | min |max] //计算有序集合的交集,并将结果保存起来
	zadd zset2 1 a 2 b 3 c 
	zadd zset3 10 a 20 b 30 c 40 d
	zinterstore newzset 2 zset2 zset3 //2代表一共有几个key,结果newzset数据为重复数据相加 11 a 22 b...
	zinterstore newzset 2 zset2 zset3 aggregate max //取最大 结果为 10 a  20 b  30 c 
	zinterstore newzset 2 zset2 zset3 aggregate min //取最小 结果为 1 a  2 b  3 c 
	zinterstore newzset 2 zset2 zset3 weights 2 3 //结果为 32(1*2+10*3) a  64(2*2+20*3) b  96(3*2+30*3) c
	zinterstore newzset 2 zset2 zset3 weights 2 3 aggregate max //结果为计算后取最大30 60 90
zunionstore newkey 2 [weights weight weight] [aggregate sum | min |max] //计算有序集合的并集,并将结果保存起来 用法同zinterstore

flushall 清空整个 Redis 服务器的数据(删除所有数据库的所有 key )

PHP 使用 Redis Redis 是一种基于内存的键值对存储系统,它可以用来存储字符串、列表、集合、哈希表、有序集合等数据结构。它支持数据的持久化,并且支持多种数据存储方式,如 RDB 和 AOF。本文介绍了 PHP 使用 Redis 的方法,包括 Redis 简介、连接 Redis、Redis 操作、连接池、安全设置以及性能优化等方面的内容。通过学习本文,读者可以更好地掌握 PHP 与 Redis 的结合使用,提高应用程序的性能和稳定性。 阅读详情

相关推荐

【高等数值分析】Krylov子空间方法

文章目录1. 预备理论1.1 Krylov 子空间1.2 最佳逼近1.2.1 方法一:最佳平方逼近1.2.2 方法二:假设 AAA 对称正定1.2.3 方法三:残差2范数2. 基底正交化2.1 Arnoldi 过程(CGS)2.2 改进 Arnoldi 过程(MGS)2.3 Lanczos过程3. 方程组求解3.1 全正交方法 (FOM)3.2 D-Lanczos方法3.3 广义极小残量法(GMRES)3.4 MINRES 方法 1. 预备理论 现在需要求解一个大规模稀疏方程组 Ax=bAx=bAx=b,可

Glooow的博客 1万+

Redis的简单使用

Redis的简单使用 Jedis入门 Jedis介绍 Redis不仅是使用命令来操作,现在基本上主流的语言都有客户端支持,比如java、C、C#、C++、php、Node.js、Go等。 在官方网站里列一些Java的客户端,有Jedis、Redisson、Jredis、JDBC-Redis、等其中官方推荐使用Jedis和Redisson。 Redis的Windows客户端(默认使用db...

SYJ_1835_LPM的博客 246

STM32F103C8T6实战:从零搭建三相SPWM逆变器(附MATLAB仿真、PCB、源码)

本文详细介绍了如何使用STM32F103C8T6单片机从零搭建三相SPWM逆变器,涵盖硬件选型、PCB设计、SPWM算法实现及MATLAB仿真。项目提供完整的工程文件,包括源码、PCB设计和仿真模型,适合电子工程师和学生进行实践学习。通过本教程,读者可以掌握逆变器设计的核心技术和调试方法。

weixin_30458043的博客 453

【Redis】Redis+Lua的使用注意事项

1.Redis 的操作为什么是的原子性的? 因为redis是单线程的!Redis的API是原子性的操作 2.Redis + Lua 形式为什么是原子性的? Redis从2.6.0版本开始提供了eval命令,通过内置的Lua解释器,可以让用户执行一段Lua脚本并返回数据。因为Redis单线程模型的特点,可以保证多个命令的原子性; Redis的API是原子性的操作 eval是redis...

石臻说AI(szzdzhp001) 【原名 石臻臻的杂货铺】 6792

ArcGIS | 全球新冠肺炎地图数据下载和处理

ArcGIS

thinkpang的博客 2901

Android Settings 设置Preference置灰显示

使Preference置灰显示,不能点击。先调用Preference的setEnabled(false),再调用setShouldDisableView(true); 如果使置灰项恢复正常可点击,可调用setEnabled(true)。

随风而动 1049

Redis学习Day2——Redis基础使用

Redis基本使用

wzc200406的博客 1255

六轴机械臂正逆解计算

机械臂运动学就是。包括(Forward Kinematics)和(InverseKinematics)两部分。正运动学就是逆运动学则是关节变量->机械臂末端执行器的姿势=正向运动学机械臂未端执行器的位姿->关节变量=逆向运动学。

gaoxiaochan的博客 1万+

Linux上Redis的启动、使用和停止

0、安装Redis参考06003_redis在Linux上的安装 1、Redis的启动   (1)前端模式启动     ①直接运行bin/redis-server将以前端模式启动:切换到 /usr/local/redis/redis/bin目录下,然后./redis-server ;     ②前端模式的缺点是启动完成后,不能再进行其他操作;     ③如果要操作必须使用Ctrl+C,同...

Java进阶之路 5万+

换频道——假想《道德经》与量子力学的一些联系

之前看到一位AI PM的前辈分享了自己对于PM境界的看法: 境界一,行事被放心。 境界二,独立主导产品线从0到1,做正确的事,并把事做正确。 境界三,一切以灵魂境界为基础,产品作为其理念的衍生。 对于我,3个月尝试于目标而无获,但塞翁失马焉知非福。自己已经具备境界一,虽然境界二尚未成熟,但境界三却有幸有所思考。 今天,往澳门的动车途中有感而发,为随笔。

1021

华为OD机试 双机位A卷 - 流量波峰 (C++ & Python & JAVA & JS & GO)

华为OD机试双机位A卷 流量波峰,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 1377

Redis安装以及使用

为什么使用redis Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理。它支持数据结构,如字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志,具有半径查询和流的地理空间索引。Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel提供高可用性并使用Redis Cluster自动分区。 * 安装 *下载...

javaeee1的博客 315

AutoSAR系列讲解 - 资料下载

学习资料下载汇总

雪云飞星的博客 4万+

Redis的基本介绍及使用

Redis是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。......

weixin_53946236的博客 789

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Redis Java使用

要想本地主机能访问redis,需要把redis的端口通过云服务器后台页面的“防火墙/安全组"放开端口到公网上。注意:在代码中另起一个线程,直接通过jedis这个连接插入数据是不行的,必须另起一个jedis连接。因此我们可以使用端口转发的方式,直接把服务器的redis端口映射到本地。Java操作redis的客户端有很多,其中最知名的是jedis。此时,访问本地的8888,就相当于访问对应服务器的6379.需要在创建实例的时候,把多个节点的地址,都设置进去。将远程服务器上的某个端口转发到本地机器的某个端口。

doting__的博客 2302

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

redis 使用

redis 安装之前有写过。这里就记录下redis的使用,方便以后查看。 1.打开redis服务 $ redis-server 2.进入redis $ redis-cli 重新打开一个terminal。 3.使用python来操作redis用法 https://blog.youkuaiyun.com/jiede1/article/details/79807044 4.常用命令: 1.访问和查看 > ...

weixin_30516243的博客 141

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Django中使用redis

方式一 utils文件夹下,建立redis_pool.py import redis POOL = redis.ConnectionPool(host='127.0.0.1', port=6379,password='1234',max_connections=1000) 视图函数中使用: import redis from django.shortcuts import render,...

weixin_30952103的博客 107

【Redis】C++如何使用redis

redis-plus-plus的使用

weixin_69380220的博客 1375

redis在windows上的安装与使用

我整理的一些关于【windows】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/f2PFnNRedis在Windows上的安装与使用指南 Redis是一款开源的高性能内存数据存储系统,通常用作数据库、缓存和消息代理。尽管它主要在类Unix系统上运行,但我们也可以在Windo...

weixin_33533460的博客 234

【Go】-go-redis库的使用

Redis是一个开源的内存数据库,Redis提供了多种不同类型的数据结构,很多业务场景下的问题都可以很自然地映射到这些数据结构上。除此之外,通过复制、持久化和客户端分片等特性,我们可以很方便地将Redis扩展成一个能够包含数百GB数据、每秒处理上百万次请求的系统。

knoci的博客 2255

Redis简单使用

Redis是一个基于内存的key-value键值对结构的数据库,由于存储在内存中,它的访问速度要远高于MySQL数据库,因此被企业广泛应用到程序中。但内存是有限的,所以只使用内存存储的Redis方式难以满足需求,因此通常是MySQL 数据库和Redis数据库配合使用。Redis中文网。

qq_55926096的博客 1064

Redis在C#中的使用

之前写了Redis在Windwos下的安装方法,没有安装的朋友可以参考下 下面开始介绍Redis在C#中的使用 打开VS新建一个winform项目(我这里用的是vs2015) 然后添加NuGet包 StackExchange.Redis(这里注意要求.net .net framework的环境最少是4.5) 否则会报错 这时候我们把.net framework改为4.5 然后安装 安装...

weixin_40333655的博客 541

Java中使用Redis

Java中操作Redis

2301_79957017的博客 1139

Redis Memory Analyzer 使用教程

Redis Memory Analyzer 使用教程 项目介绍 Redis Memory Analyzer(RMA)是一个用于实时扫描Redis数据库并聚合计数和内存使用统计的控制台工具。它能够通过键前缀来统计键的数量和内存使用情况,支持多Redis数据库的并发扫描,具有低内存占用和高扫描速度的特点。RMA旨在帮助用户发现Redis内存使用的瓶颈,特别是在处理包含数百万键的大型数据库时。 项目快速...

gitblog_00830的博客 647

【Redis系列】Redis安装与使用

Redis(Remote Dictionary Server)是一个开源的内存数据库,它提供了高性能和持久化存储。Redis 支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合,使其成为一个强大的数据存储和缓存解决方案。

m0_67393342的博客 1108

使用redis-plus-plus库连接redis

C++ 操作 redis 的库有很多. 此处使⽤ redis-plus-plus,因为这个库的功能强⼤, 使⽤简单

m0_72532428的博客 2256
上一篇: centos7安装php7
下一篇: php7自动加载spl_autoload_register
穿凉鞋的大力哥
博客等级 码龄9年 66粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值