百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

redis命令大全

wptr33 2024-12-31 15:02 17 浏览

话不多说直接开干!

一:key的操作

keys * :查询所有的key

dump k:序列化k,并返回被序列化的值

del k :要删除的key

exists k :key是否存在,存在返回1,不存在返回0

expire k s:设置key的有效时间秒

ttl k:查看k的有效时间

pexpire k ss:设置key的毫秒有效时间

persist k:将有效时间去掉

keys user:? :模糊查询key

keys user:*:模糊查询key

randomkey:随机获取一个key(抽奖)

rename k1 k2:重命名key

select 下表:(redis数据库默认16个数据库(0~15)):根据下标切换数据库

move k 下标:移动key到其他的库

type k:获取key所存储的数据类型


二:String类型

setnx k v :有这个key不保存,没有则创建一个新的

getrange k start end(偏移量):通过开始,结束位置截取k的值

getbit k number:

mget k k k :获取多个k的值

getset k v:设置k的新值,返回k的旧值

strlen k:获取k值的长度

incr k:k值自增加一,如果k不存在,初始化0

incrby k num :每次想自增数值

decr k:自减

decrby k num;每次想自减的值


三:hash类型

hset k(对象名称) field(属性) v(值) :添加hash

hget k field:获取元素的值

hmset k field v field v field v ....:批量添加hash元素的值

hgset k field field field :批量获取hash元素

hgetall k:获取所有k中的元素

hlen k :获取hash中有多少个元素

hkeys k:获取hash中所有字段

hdel k field field.....:删除hash中多个属性

hincrbyfloat :浮点类型增加

hsetnx k fireld v :如果field有值则不保存,没有则保存

hincrby k field num :指定hash中字段field自增num

hexists k field: k中是否存在field元素


四:list类型

lpush k:从左边添加元素

rpush k:从右边添加元素

lrange k start end:通过下标范围获取元素

lrange k 0 -1:获取k中所有的元素

Lpushx key value

将一个值插入到已经存在的列表的头部,如果列表不存在,操作无效

Rpushx key value

将一个值插入到已经存在的列表的尾部,如果列表不存在,操作无效

llen k:获取k中元素的个数

lindex k 下标:通过下表获取元素

lpop k :从左边移除元素

rpop k :从右边移除元素

blpop k timeout :从左边移除元素,没有元素等待时间,有移除

brpop k timeout :从右边移除元素,没有元素等待时间,有移除

ltrim k start end :要保留start~end之间的元素

lset k index renamekey :修改下标index元素

linsert k before/after 元素 数据:在元素之前或者之后插入数据

rpoplpush k1 k2:从k1移除一个元素到k2的头部


五:set类型

sadd k v v v v v:添加元素

scard k:查看集合的大小

smembers k :查看k所有的元素

sismember k 元素;查看k中有没有这个元素

srandmember k count:随即从k中取出count个元素

spop k count:移除count个元素并返回结果

srem k 元素:指定移除哪个元素

smove set k1 元素:将元素移入到k1中

sdiff k1 k2 :取差集,取k1中有的,k2中没有的元素

sinter k1 k2:取k1 k2交集的元素

sunion k1 k2:取k1 k2并集的元素

sunionstore k3 k1 k2 :把k1 k2中并集的元素存放在k3中


六:zSet类型

zadd k 分数 元素 分数 元素....:增加元素

zcard k:查找有多少个元素

zrange k 0 -1:查看所有元素

zrange k 0 -1 withscores:查看所有元素以及分数

zrevrange k 0 -1 :倒序查看所有元素

zcount k 分数1~分数2:查看分数1~分数2之间的元素个数

zrank k 元素:查找该元素所在集合中下标的位置

zadd k 分数 原有元素:修改该元素的分数

zremrangebyrank k 下标1~下标2:删除下标1~下标2之间的元素

zremrangebyscore k 分数1~分数2:删除分数1~分数2之间的元素

zincrby k num 元素:k中的元素分数自增num个

zscore k 元素:返回元素的分数


七:其他

flushdb:删除当前库中的所有信息

flushall:删除库中的所有数据

subscribe cctv .....:订阅多个频道

publish cctv message:发布信息(message)

unsubscribe cctv....:退订频道

相关推荐

Linux高性能服务器设计

C10K和C10M计算机领域的很多技术都是需求推动的,上世纪90年代,由于互联网的飞速发展,网络服务器无法支撑快速增长的用户规模。1999年,DanKegel提出了著名的C10问题:一台服务器上同时...

独立游戏开发者常犯的十大错误

...

学C了一头雾水该咋办?

学C了一头雾水该怎么办?最简单的方法就是你再学一遍呗。俗话说熟能生巧,铁杵也能磨成针。但是一味的为学而学,这个好像没什么卵用。为什么学了还是一头雾水,重点就在这,找出为什么会这个样子?1、概念理解不深...

C++基础语法梳理:inline 内联函数!虚函数可以是内联函数吗?

上节我们分析了C++基础语法的const,static以及this指针,那么这节内容我们来看一下inline内联函数吧!inline内联函数...

C语言实战小游戏:井字棋(三子棋)大战!文内含有源码

井字棋是黑白棋的一种。井字棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉、一条龙、三子旗等。将正方形对角线连起来,相对两边依次摆上三个双方棋子,只要将自己的三个棋子走成一条线,对方就算输了。但是,有很多时...

C++语言到底是不是C语言的超集之一

C与C++两个关系亲密的编程语言,它们本质上是两中语言,只是C++语言设计时要求尽可能的兼容C语言特性,因此C语言中99%以上的功能都可以使用C++完成。本文探讨那些存在于C语言中的特性,但是在C++...

在C++中,如何避免出现Bug?

C++中的主要问题之一是存在大量行为未定义或对程序员来说意外的构造。我们在使用静态分析器检查各种项目时经常会遇到这些问题。但正如我们所知,最佳做法是在编译阶段尽早检测错误。让我们来看看现代C++中的一...

ESL-通过事件控制FreeSWITCH

通过事件提供的最底层控制机制,允许我们有效地利用工具箱,适时选择使用其中的单个工具。FreeSWITCH是一个核心交换与混合矩阵,它周围有几十个模块提供各种功能特性。我们完全控制了所有的即时信息,这些...

物理老师教你学C++语言(中篇)

一、条件语句与实验判断...

C语言入门指南

当然!以下是关于C语言入门编程的基础介绍和入门建议,希望能帮你顺利起步:C语言入门指南...

C++选择结构,让程序自动进行决策

什么是选择结构?正常的程序都是从上至下顺序执行,这就是顺序结构...

C++特性使用建议

1.引用参数使用引用替代指针且所有不变的引用参数必须加上const。在C语言中,如果函数需要修改变量的值,参数必须为指针,如...

C++程序员学习Zig指南(中篇)

1.复合数据类型结构体与方法的对比C++类:...

研一自学C++啃得动吗?

研一自学C++啃得动吗?在开始前我有一些资料,是我根据网友给的问题精心整理了一份「C++的资料从专业入门到高级教程」,点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!个人...

C++关键字介绍

下表列出了C++中的常用关键字,这些关键字不能作为变量名或其他标识符名称。1、autoC++11的auto用于表示变量的自动类型推断。即在声明变量的时候,根据变量初始值的类型自动为此变量选择匹配的...