Redis数据库

目录

数据库安装及配置

数据库操作

启动服务

连接redis数据库

数据库命令

redis数据类型及操作

字符型string

列表list

哈希类型hash

集合set

有序集合sorted set


数据库安装及配置

参考:https://www.runoob.com/redis/redis-install.html   \  https://www.cnblogs.com/ttlx/p/11611086.html

数据库操作

启动服务

连接数据之前需要启动数据库服务:redis-server

查看服务是否启动:ping ,返回结果为PONG说明服务已启动。

redis服务其他命令参考:https://www.runoob.com/redis/redis-server.html

连接redis数据库

本地连接redis :redis-cli

远程连接redis :redis-cli -h host(服务器地址) -p prot(端口号) -a password(密码)

退出:exit  或者 quit

数据库命令

切换数据库:select n            ——n的值为0-15,redis数据库没有名称,默认有16个,用0-15来标识,连接服务后默认连接的是第一个(0号)库。

Redis键(key)的基本命令

删除已存在的键值对:del key

检查指定的key是否存在:exits key

设置数据的过期时间

以秒计:expire key seconds   , seconds为设置的秒数

时间戳:expireat key tinestamp  , tinestamp为时间戳

毫秒计:pexpire key milliseconds  ,milliseconds为设置的毫秒数

移除过期时间:persist key   对于已设置过期时间但未过期的数据

查看剩余过期时间:数据过期后返回值为-2

以秒计返回:ttl key

以毫秒返回:pttl key  

列出所有的key:keys *

列出匹配的key:keys st*

移动数据到指定数据库中:move key db    ,db为指定的数据库(0-15)

从当前数据库中随机返回一个key:randomkey

修改key名称:
rename key newkey   当修改的newkey已存在时,会覆盖已存在的数据
renamenx key newkey   仅在newkey不存在的时候将key修改为newkey

返回key的数据类型:type key

redis数据类型及操作

字符型string

设置数据:set key value

获取数据:get key

追加数据:append key value

删除数据:del key

修改key对应的value值,并返回原来旧的value值:getset key newvalue

获取字符串中的一段子字符:getrange key start end

同时获取多个指定key的value值:mget key1 key2 .......

设置数据并同时设置以秒计的过期时间:setex key seconds(时间) value    时间以秒计

设置数据并同时设置以毫秒计的过期时间:psetex key milliseconds value  

仅在key不存在的时候设置key:seinx key value

覆写指定key的指定偏移量offset开始的字符串:setrange key offset value

获取数据长度:strlen key

同时设置多个key-value数据:mset key1 value1 key2 value2 ......

仅当key不存在时,同时设置多个key-value数据:msetnx key1 value1 key2 value2 ......

将key中存储的数字值增1:incr key

将key中存储的数字值减1:decr key

将key中存储的数字值增加指定值:incrby key increment

将key中存储的数字值减去指定值:decrby key increment

将key中存储的数字值增加指定浮点数值:incrbyfloat key increment

列表list

单值左添加:lpushx key value

单值右添加:rpushx key value

一个及以上数量值左添加:lpush key value [value......]      从头部添加数据

一个及以上数量值右添加:rpush key value [value......]      从尾部添加数据

在列表指定元素之前添加:linsert key before 指定参考元素 value

在列表指定元素之后添加:linsert key after 指定参考元素 value

通过索引设置列表元素得值:lset key index value

查看数据:lrange key strat stop

通过元素的索引查找元素:lindex key index

获取列表指定范围内的元素:lrange key strat stop

移出并获取列表中的元素:当列表没有元素会阻塞列表直到等待超时timeout或发现可弹出元素为止

取出第一元素:blpop key timeout     

取出最后一个元素:brpop key timeout

取出最后一个元素添加到指定表中(左添加):brpoplpush 移出表 移入表 timeout

保留指定范围的列表元素并返回保留元素:ltrim key strat stop

移除并获取列表中的最后一个元素:rpop key

移除并获取列表中的第一个元素:lpop key

取出最后一个元素添加到指定表中(左添加):rpoplpush 移出表 移入表

移除指定数量的value值的表元素:lrem key count value

获取长度:llen key

哈希类型hash

添加数据:hset key field value

同时添加多个数据:hmset key field1 value1 [field2 value2 .......]

仅当字段不在哈希表中的时候设置字段和值:hsetnx key field value  

查看哈希表中指定字段是否存在:hexists key field

获取哈希表中的指定字段值:hget key field

获取多个给定字段的值:hmget key field1 [field2 .....]

获取哈希表中的所有字段:hkeys key

获取哈希表中的所有value值:hvals key

获取哈希表中字段的数量:hlen key

获取哈希表中指定key的所有字段和值:hgetall key

对哈希表中key的指定字段数字添加整数增量:hincrby key field 整数值

对哈希表中key的指定字段数字添加浮点数增量:hincrbyfloat key field 整数值

删除一个或多个哈希字段:hdel key field1 [field2 .....]

集合set

添加一个及多个数据:sadd key member1 [member2]

获取集合的元素数量:scard key

返回集合中所有的成员:smembers key

集合运算:

差集:sdiff key1 key2 ...

交集:sinter key1 key2 ....

并集:sunion key1 key2 ...

将差集数据重新存储:sdiffstore newkey key1 key2 ...

将交集数据重新存储:sinterstore newkey key1 key2 ...

将并集数据重新存储:sunionstore newkey key1 key2 ...

判断member是否存在于key中:sismember key member

将集合中的元素移动到其他集合中:smove 移出集合 移入集合 指定member

随机移除集合中的一个或多个元素并返回移除的元素:spop key count  ,count不指定时默认为1,表示随机移除一个元素。

返回集合中指定数量的随机元素:srandmember key count

移除一个或多个指定元素:srem key member1 [member2 ....]

有序集合sorted set

有序集合中每个成员都有一个double类型的分数和其对应,分数可以重复,成员顺序是根据分数进行排序的。

添加一个及以上数量的数据:zadd key score1 member1 [score2 member2 .....]

对指定成员分数添加增量:zincrby key 增加量 member

获取成员数量:zcard key

获取指定分数区间的成员数量:zcount key min max

获取指定区间的集合成员:zrange key strat stop

通过scores值查看元素值:zrangebyscore key min max

返回字典区间内的成员数量:zlexcount key min max

返回字典区间集合的成员:zrangebylex key min max

返回集合中成员的分数值:zscore key member

从大到小返回集合中成员:zrevrank key member

删除指定的一个或多个成员:zrem key member1 [member2 ....]

删除给定字典区间的所有成员:zremrangbylex key min max

删除给定排名区间的所有成员:zremrangebyrank key start stop

删除指定分数区间的所有成员:zremrangebyscore key min max

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值