redis常用命令以及数据类型
Commands | Redis 官网命令查询网址
keys * #查看所有
set key name 创建kv
get key 查看kv
exist key 判断key是否存在
move key 数据库名称 移除key
expire key second(过期时间) 设置key值的过期时间(秒)
ttl key 查看当前key的剩余时间
type key 查看key的类型
append key value 在字符串后面追加字符串。如果key值不存在会默认创建
set view 长度 设置步长
incr view 长度增1
decr view 长度减1
incrby view 长度 长度增加多少
decrby view 长度 长度减少多少
getrange key 0~-1 截取key值中的内容长度
setrange key 0~最大值 value 当前长度往后被value替换
setex(set with expire) key second(过期时间) value 为key设置过期时间和内容,如果没有该key则会直接创建
setnx(set if not exist) key value 判断是否存在key,存在则创建失败(乐观锁)
mset key1 value1 key2 value2 .... 一次创建多个key值
mget key1 key2 key3 一次获取到多个key值
msetnx key1 value1 key2 value2 .... 一次判断多个key是否存在,具有原子性(一致性)一个存在都无法创建成功
getset key value 先获取key值如果不存在值返回null然后设置value,如果存在value值则先获取到该值然后再设置
List数据类型:
仍然使用key值但存储内容变成了多个字符串。
lpush key value 从列表头部(从左)放入value(类似于堆栈存储)
rpush key value 从列表尾部(从右)放入value
lpop key 从头部删除一个value值
rpop key 从尾部删除一个value值
ltrim key 0~1 选取保留下标0-1的字段
rpoplpush key1 key2 从key1尾部获取值放到key2中(剪切)
lset key index value 将列表中指定下标的值替换为当前设置的value,不存在该下标则报错
linsert key before/after value1 value2 将value2插入到value1的前面或者后面
Set数据类型:
存储方式类似于集合,但集合中的value不能重复
sadd key value 为key添加value
smemberis key 查看指定set中的所有值
sismemberis key value 判断value是否在目标集合中 在返回1否则返回0
srem key value 移除集合中的元素
smove k1 k2 value 将集合k1中的value值移动到集合k2 中
sdiff k1 k2 显示k1中和k2不同的元素
sinter k1 k2 显示出k1 k2相同的元素
hash数据类型:
存储方式与之前key-value不同,是key-map存储。(map集合属于双键集合,key-value)
hset Key key1 value1 在key中存储kv值(value-->key-value)
hget Key 获取value
hmset Key key1 value1 key2 value2 存储多个k-v值
hget Key key1 key2 获取该Key中的key1和key2 的value值
hgetall Key 获取全部的数据
hlen Key 获取字段数量
hexists Key key 判断Key中是否存在key值】
hkeys Key 获取Key中所有的key值
hvals Key 获取Key中所有的value值
哈希数据类型更适合对对象的存储,string类型更适合字符串存储
地图数据类型geoshpatial 地理位置经纬度参数
geoadd key 经度 纬度 member 例如 geoadd China:city 121.472644 31.231706 shanghai
geopos key member 查询key值中该member的经纬度
geodist key member1 member2 距离单位(m,km,ft英尺) 查询两个参数直接的直线距离
georadius key 经度 纬度 距离长度 距离单位
hyperloglog基数统计类型
对key值进行并集统计,单个统计等
pfadd key value ..... 添加
pfcount key 统计key中的基数个数
pfmerge key3 key1 key2 将key1 和key3 中的数据存储到key3中 (不重复存储)
Bitmap:位图类型(位运算存储)两种状态例如:登录,打卡,在线等等
setbit key offset value 创建key值在其中设置时间和状态(0/1)如:setbit oneweek 2 0
getbit key offset 查看某一天的状态
bitcount key start - end 查看key值从开始到结束在线(value为1)的数量。例如: BITCOUNT oneweek 0 7 统计从0-7的value=1的次数
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南