字符串的操作
sh
SET key value [NX|XX] [EX seconds] [PX milliseconds] [GET]
key
:要设置的键名。value
:要设置的值。NX
:可选参数,表示只在键不存在时才设置值。XX
:可选参数,表示只在键已经存在时才设置值。EX seconds
:可选参数,将键的过期时间设置为指定的秒数。PX milliseconds
:可选参数,将键的过期时间设置为指定的毫秒数。GET
:可选参数,返回键的旧值。
-
设置键名为 "name" 的值为 "John":
shSET name "xiaoman"
-
设置键名为 "counter" 的值为 10,并设置过期时间为 60 秒:
shSET counter 10 EX 60
-
只在键名为 "status" 不存在时,设置其值为 "active":
shSET status "active" NX
-
只在键名为 "score" 已经存在时,将其值增加 5:
shSET score 5 XX
-
设置键名为 "message" 的值为 "Hello",并返回旧的值:
shSET message "Hello" GET
-
删除键名为 "name" 的键:
shDEL name
-
批量删除多个键名:
shDEL key1 key2 key3
-
删除不存在的键名,不会报错,返回删除的键数量为 0:
shDEL non_existing_key
集合的操作
集合(Set)是一种无序且不重复的数据结构,用于存储一组独立的元素。集合中的元素之间没有明确的顺序关系,每个元素在集合中只能出现一次。
-
添加成员到集合:
shSADD fruits "apple" SADD fruits "banana" SADD fruits "orange"
-
获取集合中的所有成员:
shSMEMBERS fruits
输出结果:
arduino1) "apple" 2) "banana" 3) "orange"
-
检查成员是否存在于集合中:
shSISMEMBER fruits "apple"
输出结果:
bash(integer) 1
-
从集合中移除成员:
shSREM fruits "banana"
输出结果:
sh(integer) 1
-
获取集合中的成员数量:
shSCARD fruits
输出结果:
bash(integer) 2
-
获取随机成员:
shSRANDMEMBER fruits
输出结果:
arduino"apple"
-
求多个集合的并集:
shSUNION fruits vegetables
输出结果:
arduino1) "apple" 2) "orange" 3) "tomato" 4) "carrot"
-
求多个集合的交集:
shSINTER fruits vegetables
输出结果:
arduino"apple"
-
求多个集合的差集:
shSDIFF fruits vegetables
输出结果:
arduino"orange"
哈希表操作
哈希表(Hash)是一种数据结构,也称为字典、关联数组或映射,用于存储键值对集合。在哈希表中,键和值都是存储的数据项,并通过哈希函数将键映射到特定的存储位置,从而实现快速的数据访问和查找。
-
设置哈希表中的字段值:
perlHSET obj name "John" HSET obj age 25 HSET obj email "john@example.com"
-
获取哈希表中的字段值:
HGET obj name
输出结果:
arduino"John"
-
一次设置多个字段的值:
perlHMSET obj name "John" age 25 email "john@example.com"
-
获取多个字段的值:
HMGET obj name age email
输出结果:
perl1) "John" 2) "25" 3) "john@example.com"
-
获取哈希表中所有字段和值:
HGETALL obj
输出结果:
perl1) "name" 2) "John" 3) "age" 4) "25" 5) "email" 6) "john@example.com"
-
删除哈希表中的字段:
HDEL obj age email
输出结果:
bash(integer) 2
-
检查哈希表中是否存在指定字段:
HEXISTS obj name
输出结果:
bash(integer) 1
-
获取哈希表中所有的字段:
HKEYS obj
输出结果:
arduino1) "name"
-
获取哈希表中所有的值:
HVALS obj
输出结果:
arduino1) "John"
-
获取哈希表中字段的数量:
HLEN obj
输出结果:
bash(integer) 1
列表的操作
列表(List)是一种有序、可变且可重复的数据结构。在许多编程语言和数据存储系统中,列表是一种常见的数据结构类型,用于存储一组元素
- 添加元素:
arduino
RPUSH key element1 element2 element3 // 将元素从右侧插入列表
LPUSH key element1 element2 element3 // 将元素从左侧插入列表
LPUSH key element1 element2 ...
:将一个或多个元素从列表的左侧插入,即将元素依次插入列表的头部
。如果列表不存在,则在执行操作前会自动创建一个新的列表。RPUSH key element1 element2 ...
:将一个或多个元素从列表的右侧插入,即将元素依次插入列表的尾部
。如果列表不存在,则在执行操作前会自动创建一个新的列表。
- 获取元素:
arduino
LINDEX key index // 获取列表中指定索引位置的元素
LRANGE key start stop // 获取列表中指定范围内的元素
- 修改元素:
arduino
LSET key index newValue // 修改列表中指定索引位置的元素的值
- 删除元素:
arduino
LPOP key // 从列表的左侧移除并返回第一个元素
RPOP key // 从列表的右侧移除并返回最后一个元素
LREM key count value // 从列表中删除指定数量的指定值元素
- 获取列表长度:
arduino
LLEN key // 获取列表的长度