Redis常用操作

时间:2023-12-24 13:20:01

一、string类型的常用命令

set key1 com #一个key对应一个value,多次复制,会覆盖前面的value

setnx key1 zhangsan #如果key1不存在则创建key1,并返回1,如果可以key1存在,则不会覆盖key1的值,并返回0

setex key3 100 fansik #创建key3设置过期时间为100秒

ttl key3 #查看key还有多久过期

mset key4 123 key5 213 #同时设置多个值

mget key1 key2 key4 key5 #批量获取key值

del key1 #删除key1

二、hash类型的常用命令

hset hash1 name fanjinbao #建立一个key为name,value为fanjinbao的hash

hget hash1 name #获取name的value

hmset hash1 work it singel yes #批量创建键值对

hmget hash1 work single #批量获取key的value

hgetall hash1 #获取hash1所有的key和value

hdel hash1 name #删除hash1中的name

hkeys hash1 #列出hash1所有的key值

hvals hash1 #列出hash1所有的value

hlen hash1 #查看hash1有几个filed(返回其长度)

三、list类型的常用命令

lpush list a b c #从左向list中添加a c c三个值

lrange list 0 -1 #列出list中的值(没有rrange)

lpop list #取最左侧的值(取出的值相当于被删除)

rpush list 1 2 3 #从右向list中添加1 2 3三个值

rpop list #取最右侧的值(取出的值相当于被删除)

linsert list before 1 abx #在1的前面插入abx

lset list 3 hello #修改指定元素的值

lindex list 1 #查看列表中的值(和lpop的区别是查看的值不会被删除)

llen list #查看列别中值得个数

四、set类型的常用命令

sadd set1 a b c d #向集合中添加元素

smembers set1 #查看集合中的元素

srem set1 a #删除集合中的元素

spop set1 #取出集合中的元素(取出的值将会被删除)

sdiff set1 set2 #比较两个集合差值,哪个集合在前就会显示前面这个集合中的在后一个集合中所没有的元素

sdiffstore set3 set1 set2 #将set1与set2的差值存储到set3中

sinter set1 set2 #列出set1和set2中相同的元素(求交集)

sinterstore set3 set1 set2 #将交集结果存储到set3中

sunion set1 set2 #列出set1和set2并集(set1和set2所有元素)

sunionstore set3 set1 set2 #将并集结果保存到set3中

sismember set3 fansik #判断set3里是否有fansik,有则返回1,没有则返回0

srandmember set3 #随机取出set3中的一个元素

五、zset类型的常用命令(有序集合)

zadd zset 1 123 2 234 #创建有序集合

zrange zset 0 -1 #查看有序集合元素,按顺序显示

zrange zset 0 -1 withscores #带分值显示

zrem zset 123 #删除一个元素

zrank zset 555 #返回元素的索引值,索引值从0开始,按score正向排序

zrevrank zset 444 #返回元素的索引值,索引值从0开始,按score反向排序

zcard zset #反馈集合中所有元素的个数

zcount zset 1 10 #返回分值范围内1-10的元素个数

zrangebyscore zset 1 10 #返回分值范围内1-10的元素

zremrangebyrank zset 0 2 #删除索引范围0-2的元素,按score正向排序

zremrangebyscore zset 1 10 #删除分值范围1-10的元素

六、键值和服务器命令

keys * #取出所有key值

keys set* #模糊匹配

exists list #有list键返回1,否则返回0

del list #删除list键成功返回1,否则返回0

expire set1 10 #修改set1的过期时间为10秒

ttl set1 #查看set1键还有多长时间过期,单位是s,当kset1不存在时,返回-2,当set1存在但是没有设置剩余生存时间,返回-1,否则,返回set1的剩余生存时间

select 1 #选择数据库,默认进入0数据

move set1 2 #把set1移动到2数据库

persist zset #取消zset的过期时间

randomkey #随机返回一个key

rename key4 keyfansik #重命名一个key

type keyfansik #查看一个键的类型

七、服务相关的操作

dbsize #返回当前数据库中键的个数

info #返回redis数据库状态信息

flushdb #清空当前数据库中所有的键

flushall #清空所有数据库中的所有的key