redis 常见命令[1]

124 阅读2分钟

「这是我参与11月更文挑战的12天,活动详情查看:2021最后一次更文挑战

List

以顺序存储可以重复的字符串

增加:push

分成lpush和rpush:向左或右推入元素

// 向list的左侧推入元素 1,会返回列表的当前长度
lpush list 1

获取元素:lrange

获取指定范围内的元素

// 获取从0开始-最后的 元素
lrange list 0 -1

查找:lindex

获取指定索引下的元素

// 获取索引2位置的元素
lindex list 2

移除:pop

分成lpop和rpop,分别从左/右 弹出第一个个元素

// 弹出右侧第一个元素
rpop list 

set

使用无序,不重复的方式保存元素

添加:sadd

由于是不重复的,返回的结果是0,1.

  • 1代表添加成功
  • 0代表添加失败(已经存在相同的元素)
# 添加成功
> sadd set 1
1

# 添加失败
> sadd set 1
0

获取全部元素:smembers

获取set中的所有元素,如果元素过多,执行慢,慎用!!!

> smembers set
1
3

检查元素:sismember

检查元素是否存在,1 代表存在。0代表不存在

> sismember set 3
1
> sismember set 2
0

删除元素:screm

删除指定的元素

# 没有该元素,删除失败,返回0
> srem set 2
0
# 删除成功 
> srem set 1
1
# 查询所有元素,1已经被删除
> smembers set
3

统计个数:scard

返回set中元素的个数

> scard set
5

随机获取指定数量的元素:srandmember

> srandmember set 3
lsga
3
asdasd

> srandmember set 3
lsga
4
asdjas

hash

使用k-v键值对,存储在一个hash结构中。

增加,修改:hset,hmset

hset:设置k-v ,返回结果为该元素是否存在。1代表不存在,插入。0代表已存在,将值修改为新值

# 第一次设置时不存在,返回1
> hset user address shaoxing
1
# 第二次设置时已存在,返回0并修改
> hset user address hangzhou
0
# 获取值,发现已修改
> hget user address
hangzhou

hmset:批量设置k-v,返回是否成功(OK)

> hmset user name "yzy's son" birth 1998
OK

> hmget user name birth
yzy's son
1998

获取:hget,hmget

hget:根据k获取v ,hmget 批量k获取v

> hget user name
yzy's son

> hmget user name birth
yzy's son
1998