redis数据库的总结

redis数据库在我们日常的运用中还是经常会设计到的,无论是用来做缓存还是做去重处理,都会设计到这种数据库的相关操作,那么接下来就一起来看一下redis数据的相关操作。

select (0-15):默认情况下是会包含16个数据库,然后可以用select关键字来选择其中的任何一个数据库来操作

 

命令作用
keys *查看所有的key
type key键的类型
exists key键是否存在
random key随机取出任意一个键
set key新建一个键并给键赋值
get key

查看键对应的值

del key 删除键
rename key重命名键
renamenx key重命名一个不会重复的键
move key  0移动key到一个相应的库
ttl key(Pttl)查询生命周期(毫秒)
expire key(Pexpire)设置键的生命周期
persist key键的永久生命周期
keys pattern(正则)根据情况查找对应的键
flushdb清空一个数据库(当前)

 

以上是关于键的基本操作的几个命令,下面总结一下redis数据库关于各种数据类型的各种操作

1、字符串

set key value ex | px nx xx:给键赋值并设置生命周期,nx是不存在时,xx是必须存在这个键时才可以

mset:一次设置多个

mget:一个获取多个键的值

setrange key offset  value:根据偏移量将原值替换掉

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

getrange key start stop:获取字符串中【start stop】范围内的值

start>=length:返回空字符串

stop>=length:截取至字符串的结尾处

如果start的位置在stop的右边,则返回空字符串

getset key newvalue:获取并返回旧值,并赋值新的值

incrby key  5:增加5

decrby key 3:减少3

incrbyfloat key 0.5:增加0.5

setbit key offset 2:设置offset对应的二进制上的值

2、link链表结构(list)

lpush key value:把值插入到链表的头部

rpop key :返回并删除链表尾元素

lrange key start stop:取出链表中指定的数值

lpop key :返回并删除链表首元素

lrem key count value :从左边开始删除,count表示删除几个,value表示要删除的值或者元素

ltrim key  start stop:从start开始截取,到stop结束,并将截取后的结果重新赋值给key,原值发生变化

lindex key index:返回索引对应的值

llen key:该键对应的值的长度

linsert key after|before search value:在找到的值前面或者后面插入值,直会对找到的第一个值进行操作

rpoplpush  key1 key2 :将key1的右边第一个转移到key2的左边

brpop | blpop  key timeout:等待弹出key的尾|头元素,timeout是等待超时时间,如果timeout为0,则是一直等待。

3、set集合数据结构

集合的特性:无序性、唯一性、确定性

sadd key value1 value2 :往集合中添加元素

srem key value1  value2:删除元素

spop key :返回并删除集合key中一个随机元素

srandmember key:返回集合key中一个随机元素

sismember key value:判断value是不是存在于key中,是的话返回1,否则返回2

smembers key:返回集合中的所有元素

scard key :返回集合中元素的个数

smove source dest value:把source中的元素删除并添加到dest集合中

sinter key1 key2 key3 :求出三个集合的交集并返回

sinterstore dest key1 key2 key3 :将三个集合的交集赋值给dest

sunion key1 key2 key3:求三个集合的并集

sdiff key1 key2 :key1 与key2的差集(即key1中存在,key2中不存在的值)

4、order set 有序集合

ps:括号内是指可选项

有序集合:声明集合的同时还要声明元素的权重(用于排序)

zadd key score1 value1 score2 value2 .。。。。:创建一个有序集合

zrem key value1 value2 :删除集合中的元素

zremrangebyscore key min max(limit offset N):按照score的值删除元素,删除score值在min和max之间的元素

zremrangebyrank key start end:按照排名删除元素,删除名次在[start  end]之间的元素

zrank key member :查询member的排名

zrevrank key member:查询member的排名,降序排列

zrange key start stop (withscores):把集合排序后返回名词(start stop)的元素默认是升序排列,withscores是把score的值打印出来

zcard key:统计集合中的元素个数

zcount key min max:返回key里[min max]区间内的元素个数

zinterstore destination numkeys key1[key2.....] [weight][min |max|sum]:eg:zinterstore result 2 lisi wang aggregate sum

当然权重也是可以加上去的。

eg:zinterstore result 2 lisi wang weights 2 1 aggregate sum

设置权重以后,结果会是在没有权重的基础上乘以权重作为最后的结果

5、hash数据结构

hset key field value:把key中field域的值设为value,如果没有field,直接添加,如果有,则覆盖原来的值

hmset key field1 value1  field2  value2 field3 value3:一次性设置多个域的值

hget key field:返回key里域field的值

hmget key field1 field2 field3:一次获取多个域的值

hgetall key:一次性获取key里所有域的值

hlen key:返回key中元素的数量

hdel key field:删除key中field域

hexists key field :判断是不是存在某个域

hincrby key field value:是把key中field域的值增长整型值 value

hincrbyfloat key field value:是把key中field域的值增长浮点型值 value

hkeys key:返回所有的键

hvals key:返回所有的值

 

以上就是redis中关于各个类型的操作的命令,如果有没有总结到的,可以留言讨论。

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值