ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

redis部分数据结构的命令

2022-04-27 14:31:21  阅读:142  来源: 互联网

标签:127.0 keys 6379 0.1 redis value 命令 key 数据结构


redis命令

select index (select 1) #数据库的切换
dbsize #查看redis某个数据库的大小
keys * #查看当前数据下key值(匹配任意个字符)
keys k? #匹配以k开头的
del key值(del k1) #删除某个key 如果成功,会返回1
move key值  index #移动某个key值到里另外一个数据
exists keys #查看某个key值是否存在
type key (type 3k)#查看变量类型,类似于linux下的file
expire key值 num(一个数字,秒数为单位) #设置过期时间
Ttl key值 #查看是否过期 -2为过期 -1为永不过期 

常用数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

string

set key value(set p1 100) #设定指定key的值
get key(get p1) #获取定义key值
mset key value...#可以一次性设置多个值
mget keys...    # 一次获取多个
getrange keys start end #类似于substr(按照数组顺序开始)
getrange keys 0 -1 #-1是倒数第一个 -2 是倒数第二个 同理 
setrange keys offset value#用value从offset位置开始覆盖
getset key value #将老的值返回,然后set新值
setex keys seconds value # 改变keys的值,同时设置过期时间,过期了就会ttl返回-2
incr keys #加一
incrby keys value #对key值加多少
decr keys #减一
decrby keys value #减多少

list(双向链表)

Lpush keys value #从左边插入
Rpush keys value # 从右边插入
LRANGE keys start end #遍历
Lpop keys #队头出队
Lset keys index value #通过下标设置元素的值,从0开始数
Lindex keys index #通过下标获取列表中的元素
Lrem keys count value #从队头开始移除count个值为value的列表元素
Ltrim kets start stop #只保留从start到top的元素
LINSERT key BEFORE|AFTER pivot value  #在列表的元素前或者后插入元素

Set(集合):集合中的元素是唯一的,无序的

SADD keys member1 member2 #向集合中添加一个或多个成员
SCARD keys #查看当前成员个数
127.0.0.1:6379> SMEMBERS set1  #查看所有成员
1) "22"
2) "32"
3) "42"
127.0.0.1:6379> SISMEMBER set1 22 #查看value是否在集合keys中
(integer) 1
127.0.0.1:6379> SISMEMBER set1 24
(integer) 0
127.0.0.1:6379> SMOVE set1 set2 32 #把value从set1 移动到set2 中
(integer) 1
127.0.0.1:6379> SMEMBERS set1  
1) "22"
2) "42"
127.0.0.1:6379> SMEMBERS set2
1) "32"
2) "34"
127.0.0.1:6379> SREM set1 22 #删除set1指定集合中的value
(integer) 1
127.0.0.1:6379> SMEMBERS set1
1) "42"
127.0.0.1:6379> SRANDMEMBER set2 2 #从set2 中随机选取count个数
1) "32"
2) "34"
127.0.0.1:6379> SPOP set2 2 #移除并返回集合中的num个随机元素
1) "32"
2) "34"
127.0.0.1:6379> SDIFF set1 set2  #key1有 而 key2 没有的元素
1) "4"
2) "7"
3) "8"
4) "42"
127.0.0.1:6379> SMEMBERS set1
1) "2"
2) "4"
3) "7"
4) "8"
5) "42"
127.0.0.1:6379> SMEMBERS set2
1) "2"
2) "3"
3) "5"
4) "9"
127.0.0.1:6379> SINTER set1 set2  #求交集
1) "2"
127.0.0.1:6379> SUNION set1 set2  #求并集
1) "2"
2) "3"
3) "4"
4) "5"
5) "7"
6) "8"
7) "9"
8) "42"

Zset: sort set

127.0.0.1:6379> ZADD sset1 10 str1 20 str2 30 str3 #增加多个成员,并且赋予一个分数,根据分数进行排序
(integer) 3
127.0.0.1:6379> ZRANGE sset1 0 -1 WITHscores #遍历
1) "str1"
2) "10"
3) "str2"
4) "20"
5) "str3"
6) "30"

hash

127.0.0.1:6379> HSET hash1 sex man #hset依次为keys field value
(integer) 1
127.0.0.1:6379> HGET hash1 sex #hget 获得对应的
"man"
127.0.0.1:6379> HMSET hash1 sex man age 10 name shuaige #多添加一点
OK
127.0.0.1:6379> HMGET hash1 sex age name #获得这几个的value
1) "man"
2) "10"
3) "shuaige"
127.0.0.1:6379> HVALS hash1 #获取所有的value
1) "man"
2) "10"
3) "shuaige"
127.0.0.1:6379> HKEYs hash1 #获得所有的key值
1) "sex"
2) "age"
3) "name"
127.0.0.1:6379> HLEN hash1 #获得数量
(integer) 3
127.0.0.1:6379> HGETALL hash1 #获取所有的字段和值
1) "sex"
2) "man"
3) "age"
4) "10"
5) "name"
6) "shuaige"

标签:127.0,keys,6379,0.1,redis,value,命令,key,数据结构
来源: https://www.cnblogs.com/fancele/p/16198782.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有