Redis支持多种数据类型,包括字符串(String)、列表(List)、集合(Set)、有序集合(Sorted Set)和哈希表(Hash)。以下是这些数据类型的使用方法:
-
字符串(String):
- 设置值:
SET key value
- 获取值:
GET key
- 自增:
INCR key
- 自减:
DECR key
- 追加字符串:
APPEND key value
- 字符串长度:
STRLEN key
- 设置值:
-
列表(List):
- 插入元素到头部:
LPUSH key value
- 插入元素到尾部:
RPUSH key value
- 获取列表头部元素:
LPOP key
- 获取列表尾部元素:
RPOP key
- 获取列表指定位置元素:
LRANGE key index
- 删除指定位置元素:
LREM key count value
- 反转列表:
RLEN key
- 插入元素到头部:
-
集合(Set):
- 添加元素:
SADD key value
- 删除元素:
SREM key value
- 检查元素是否存在:
SISMEMBER key value
- 获取集合所有元素:
SMEMBERS key
- 集合大小:
SCARD key
- 随机获取集合元素:
SRANDMEMBER key [count]
- 移除并返回集合中指定数量的元素:
SPOP key [count]
- 添加元素:
-
有序集合(Sorted Set):
- 添加元素并设置分数:
ZADD key score value
- 获取指定分数的元素:
ZRANGE key min max [WITHSCORES]
- 获取指定排名的元素:
ZREVRANGE key start end [WITHSCORES]
- 更新元素的分数:
ZADD key new_score value
- 删除指定分数的元素:
ZREM key score
- 判断元素是否在有序集合中:
ZISMEMBER key value
- 获取有序集合的大小:
ZCARD key
- 添加元素并设置分数:
-
哈希表(Hash):
- 添加键值对:
HSET key field value
- 获取键值对:
HGET key field
- 删除键值对:
HDEL key field
- 检查键是否存在:
HEXISTS key field
- 获取哈希表所有键值对:
HGETALL key
- 删除哈希表中所有元素:
FLUSHDB
或FLUSHALL
(清空数据库) - 键值对数量:
HLEN key
- 添加键值对:
使用Redis命令时,可以通过命令行工具、编程语言库或API与Redis服务器进行交互。以下是一个简单的Python示例,使用redis-py
库操作Redis数据类型:
import redis # 连接到Redis服务器 r = redis.Redis(host='localhost', port=6379, db=0) # 字符串操作 r.set('name', 'Alice') print(r.get('name')) # 输出: Alice # 列表操作 r.lpush('mylist', 'Bob', 'Charlie') print(r.lrange('mylist', 0, -1)) # 输出: ['Charlie', 'Bob', 'Alice'] # 集合操作 r.sadd('my_set', 'David', 'Eve') print(r.smembers('my_set')) # 输出: {'David', 'Eve'} # 有序集合操作 r.zadd('my_zset', {'Alice': 1}, {'Bob': 2}) print(r.zrange('my_zset', 0, -1)) # 输出: [('Alice', 1), ('Bob', 2)] # 哈希表操作 r.hset('my_hash', 'age', '30') print(r.hgetall('my_hash')) # 输出: {'age': '30'}
在使用Redis数据类型时,可以根据具体需求选择合适的数据结构,并根据业务逻辑编写相应的操作代码。