Redis基本指令操作

2020-02-17  本文已影响0人  村东头老骥

Redis常用操作

Redis的值的类型分为五种

String

字符串类型是redis中最为常见的数据类型,它在redis中是二进制安全的,这便意味着该类型可以接受任何数据格式的数据,如jpeg图像数据或json数据对象描述信息等.在redis中字符串类型的value最多可以容纳的数据长度是512M

字符串的设置与获取

set key value
get key
注意 : 如果设置的键不存在则为添加,如果设置的键已经存在则为修改

127.0.0.1:6379> set name kevin
OK
127.0.0.1:6379> get name 
"kevin"

设置键值以及过期时间,以秒为单位 setex

setex key seconds value

127.0.0.1:6379> setex name 5 kevin 
OK
127.0.0.1:6379> get name 
"kevin"
127.0.0.1:6379> get name
(nil)   #  数据已不存在

设置多个值

mset key1 value1 key2 value2 ...
mget key1 key2 key3

127.0.0.1:6379> mset name kevin age 18 sex man
OK
127.0.0.1:6379> get name
"kevin"
127.0.0.1:6379> get age
"18"
127.0.0.1:6379> mget name age sex
1) "kevin"
2) "18"
3) "man"

对值进行拼接追加 append

append key value

127.0.0.1:6379> set say hello
OK
127.0.0.1:6379> get say
"hello"
127.0.0.1:6379> append say word
(integer) 9
127.0.0.1:6379> get say
"helloword"

键操作

keys * (正则匹配) 获取所有的键

127.0.0.1:6379> keys *
1) "age"
2) "name"
3) "sex"
4) "say"

判断键是否存在 exists

exists key

127.0.0.1:6379> exists name
(integer) 1  # 存在返回1 
127.0.0.1:6379> exists no
(integer) 0  # 不存在返回0

查看键的数据类型 type

type key

127.0.0.1:6379> type name
string
127.0.0.1:6379> type age
string

删除键 del

del key1 key2

127.0.0.1:6379> del name
(integer) 1
# 删除不存在的键
127.0.0.1:6379> del name2
(integer) 0

设置键的指定过期时间 expire

expire key

127.0.0.1:6379> expire name 4
(integer) 1

查看键的过期时间 ttl

ttl key

127.0.0.1:6379> expire age 10 
(integer) 1
127.0.0.1:6379> ttl age
(integer) 8
127.0.0.1:6379> ttl age

hash

哈希用于存储对象,对象结构为属性,值
值的类型为String

设置单个属性值

hset key field value

127.0.0.1:6379> hset user name kevin
(integer) 1
127.0.0.1:6379> hget user name
"kevin"

设置多个属性值

mset key field1 value1 field2 value2 ...

127.0.0.1:6379> hmset userinfo name kevin age 18 
OK
127.0.0.1:6379> hmget userinfo name age
1) "kevin"
2) "18"

获取指定键所有的属性

hkeys key

127.0.0.1:6379> hkeys userinfo
1) "name"
2) "age"

获取指定键所有的值

hvals key

127.0.0.1:6379> hvals userinfo
1) "kevin"
2) "18"

删除

hdel key field1 field2 ...

127.0.0.1:6379> hdel userinfo age
(integer) 1
127.0.0.1:6379> hkeys userinfo
1) "name"

list 类型

增加

左侧插入数据

lpush key value1 value2 ...

127.0.0.1:6379> lpush userinfo Kevin Bob Lisa
(integer) 3
127.0.0.1:6379> lrange userinfo 0 -1
1) "Lisa"
2) "Bob"
3) "Kevin"

右侧插入数据

rpush key value1 value2 ...

127.0.0.1:6379> rpush userinfo Hugo
(integer) 4
127.0.0.1:6379> lrange userinfo 0 -1
1) "Lisa"
2) "Bob"
3) "Kevin"
4) "Hugo"

在指定元素的前或后插⼊新元素

linsert key before或after 现有元素 新元素

127.0.0.1:6379> linsert userinfo before Kevin insert
(integer) 5
127.0.0.1:6379> lrange userinfo 0 -1
1) "Lisa"
2) "Bob"
3) "insert"
4) "Kevin"
5) "Hugo"
127.0.0.1:6379> linsert userinfo after Kevin insert1
(integer) 6
127.0.0.1:6379> lrange userinfo 0 -1
1) "Lisa"
2) "Bob"
3) "insert"
4) "Kevin"
5) "insert1"
6) "Hugo"

获取

返回列表中指定范围内的元素

lrange userinfo 0 -1

设置指定索引位置的元素值

lset key index value
索引从左侧开始,第⼀个元素为0
索引可以是负数,表示尾部开始计数,如-1表示最后⼀个元素

127.0.0.1:6379> lset userinfo 0 Hugo
OK
127.0.0.1:6379> lrange userinfo 0 -1
1) "Hugo"
2) "Bob"
3) "insert"
4) "Kevin"
5) "insert1"
6) "Hugo"

删除

将列表中前count次出现的值为value的元素移除

lrem key count value

127.0.0.1:6379> lrange users 0 -1
1) "Kevin"
2) "Lisa"
3) "Kevin"
4) "Bob"
5) "Kevin"
127.0.0.1:6379> lrem users 1 Kevin
(integer) 1
127.0.0.1:6379> lrange users 0 -1
1) "Lisa"
2) "Kevin"
3) "Bob"
4) "Kevin"

set 类型

增加

sadd key member1 member2 ...

127.0.0.1:6379> sadd names zhangsan lisi wangwu
(integer) 3
127.0.0.1:6379> smembers names
1) "lisi"
2) "zhangsan"
3) "wangwu"

删除

srem key

127.0.0.1:6379> srem names lisi
(integer) 1
127.0.0.1:6379> smembers names
1) "zhangsan"
2) "wangwu"

zset 类型

增加

zadd key score1 member1 score2 member2 ...

127.0.0.1:6379> zadd user 1 Kevin 2 Bob 3 Lisa
(integer) 3
127.0.0.1:6379> zrange user 0 -1
1) "Kevin"
2) "Bob"
3) "Lisa"

获取

zrange key start stop

zrange user 0 -1

返回index值在min和max之间的成员

127.0.0.1:6379> zrangebyscore user 1 2
1) "Kevin"
2) "Bob"

返回成员member的score值

127.0.0.1:6379> zscore user Bob
"2"

删除

删除指定的元素

zrem key member1 member2 ...

127.0.0.1:6379> zrem user Lisa
(integer) 1
127.0.0.1:6379> zrange user 0 -1
1) "Kevin"
2) "Bob"

删除权重在指定范围的元素

zremrangebyscore key min max

上一篇下一篇

猜你喜欢

热点阅读