目录
Redis中五种常用的结构:
字符串:String
字符串可以存储三种类型的值:字节串、整数、浮点数
列表:List
Redis中五种常用的结构:
字符串(string)、列表(list)、集合(set)、散列(hash)、有序集合(zset)客户端基础命令操作
字符串:String
字符串可以存储三种类型的值:字节串、整数、浮点数
存储值类型为字符串
命令 | 说明 | 举例 |
append | append [key] [value] | key对应的存储之后面拼接字符串value |
getrange | getrange [key] [start] [end] | 查询key对应的存储值在指定下标索引位置的子串 |
setrange | setrange [key] [offset] [replaceValue] | 替换key对应的存储值在指定下标索引后面的所有子串 |
strlen | strlen key | 获取key对应的存储值字符串长度 |
append
语法:append [key] [value]
说明:key对应的存储之后面拼接字符串value
getrange
语法:getrange[key] [start] [end ]
说明:key对应的存储值指定索引范围子串
setrange
语法:setrange [key] [offset] [replaceValue]
说明:key对应的存储值从指定的索引位置进行覆盖(替换)
strlen
语法: strlen [key]
说明:key对应的存储字符串的长度
注:key对应的存储值无论是否时整数、浮点型,字符串都可用以上命令
存储值类型为整数
命令 | 说明 | 举例 |
INCR | INCR [key] | key对应的存储值加一 |
DECR | DECR [key] | key对应的存储值减去一 |
INCRBY | INCRBY [key] [num] | key对应的存储值加num |
DECRBY | DECRBY [key] [num] | key对应的存储值减去num |
注:如果存储值不是整数值则进行加减操作会报错
存储值类型为浮点数
命令 | 说明 | 举例 |
INCRBYFLOAT | INCRBYFLOAT [key][value] | key对应的存储值加value |
语法: INCRBYFLOAT[key]
说明:key对应的存储字符串的长度
列表:List
非阻塞式,插入弹出
命令 | 举例 | 说明 |
LPUSH | lpush 【key 】【value】 | key对应的存储列表从左侧加入value元素值 |
RPUSH | rpush 【key 】【value】 | key对应的存储列表从右侧加入value元素值 |
LPOP | lpop 【key】 | 从左侧弹出一个元素,移除索引下标最小的元素 |
RPOP | rpop 【key】 | 从右侧弹出一个元素,移除索引下标最大的元素 |
LRANGE | lrange【key】[start] [end] | 获取key对应存储列表中指定索引下标范围的元素 |
LINDEX | lindex 【key】[index] | 取key对应存储列表中指定索引下标位置的元素 |
llen | llen [key] | 获取key对应列表集合的长度 |
LINSERT | linsert [key] before | after [目标元素] | 在指定目标元素之前或者之后插入一个新的元素 |
LPUSH
语法:lpush [key] [value]
说明:在key对应的存储值列表中从左侧添加元素(即列表最小索引下标的左边),该元素也成为新列表的最小索引位置的元素
LPUSH
语法:rpush [key] [value]
说明:在key对应的存储值列表中从右侧添加元素(即列表最大索引下标的右边),该元素也成为新列表的最大索引位置的元素
LPOP
语法:lpop [key]
说明:在key对应的存储值列表中移除下标索引最小的元素
RPOP
语法:rpop [key]
说明:在key对应的存储值列表中移除下标索引最大的元素
LRANGE
语法:lrange [key] [start] [end]
说明:获取key对应的存储列表中指定索引范围的元素列表,其中lrange 【key 】0 -1表示获取所有
LINDEX
语法: lindex [key] [start]
说明:获取key对应的存储列表中指定索引位置的元素
LINSERT
语法: linsert [key] BEFORE | AFTER [指定元素] [目标元素]
说明:在指定元素之前和之后添加目标元素
LLEN
语法: llen [key]
说明:获取key对应的列表集合的长度
LPUSHX
语法:lpushx [key] [value]
书籍名当key存在时且key对应的存储值为列表,则向key对应的存储列表中添加元素,如果key不存在,则不加入。
阻塞式插入,弹出方式
命令 | 举例 | 说明 |
BLPOP | blpop 【key】【timeout】 | 从左侧弹出(索引值最小的)元素,如果key对应的列表中没有数据时再次弹出时阻塞超过timeout,將返回一共花费多少时间 |
BRPOP | brpop 【key】【timeout】 | 从右侧弹出(索引值最大的)元素,如果key对应的列表中没有数据时在弹出时阻塞超过timeout,將返回一共花费多少时间 |
RPOPLPUSH | rpoplpush [key0] [key1] | 将key0对应的存储值列表中从列表右侧(索引最大的元素)移除,然后将该移除的元素从左侧加入到key1对应的列表中 |
BPOPLPUSH | poplpush |