文章目录
进入redis
进入redis数据库
redis-cli
查看redis版本号
redis-cli -v redis-cli --version
选择数据库,redis只有16个数据库,序号0-15
select 15 选择第16个数据库
select 2 切换到第三个数据库
类型
- string 字符串
- list 列表
- Hash 哈希
- set 集合
- zset 有序集合
所有命令的查询网站 http://doc.redisfans.com/
string类型
数据是字符串类型
设置数据
单条设置 set key value
多条设置 mset key1 v1 key2 v2
set k1 v1 添加k1键 值为v1
mset k2 v2 k3 v3 k4 v4 多条数据添加
查找数据
单条查找 get key
多条查找 mget key1 key2
get k1 查看k1的值
mget k1 k2 k3 查看多条key 的值
keys* 查找全部键的值
看键是否存在
exists key 存在返回1,不存在返回0
exists k1 返回1 说明存在
exists k5 返回0 说明不存在
查看键的值类型 type key
type k1 结果string 查看键k1的值的类型,结果为string类型
追加数据
append key value
append k1 666 在k1的值value中追加666
如果追加的key不存在,则为新增
删除数据
删除单条 del key
del k2 删除key为k2的数据
修改键名
修改键 rename key1 key2
rename k1 k5 把键k1的名字修改为k5
设置过期时间
设置 n秒后删除键 expire key seconds
查看过期时间 ttl key
删除过期时间 persist key
expire k1 10 设置10秒后,k1自动删除
ttl k1 查看k2还有多少秒会删除,如果k1没有设置过期时间会返回-1
persist k1 删除k1的过期时间,如果k1没有设置过期时间会返回,会不成功
list
字符串列表,可以在表头或者尾部添加/删除数据,插入数据时。如果该键不存在,redis会为该键创建一个
添加数据
从右边开始添加rpush list value
从左边开始添加lpush list value
rpush list_a world 在list_a的右边添加数据world
lpush list_a hello 在list_a的左边添加数据hello
rpush list_a python jiucheng 右边添加多条数据
查看数据
范围查看数据 lrange key start stop
指定数据查看 lindex key index
lrange list_a 0 10 查看list_a中索引0到10的数据
lindex list_a 3 查看list_a中索引为3 的数据
修改数据
修改对应索引的数据lset key index value
lset list_a 3 haha 修改所以为3的数据值为haha
删除数据
从右边开始删除数据rpop key
从左边开始删除数据lpop key
制定索引删除 lrem key index value
rpop list_a 从list_a的右边开始删除数据
lpop list_a 从list_a的左边开始删除数据
lrem list_a 1 hello 指定删除索引1的数据,但是指定删除必须带上索引对应的值才能删除,否则会报错
Hash类型h
数据是键值对的集合(key,value)
设置数据
hset key field value 单条数据添加
hmset key field1 value1 field2 value2 多条数据添加
插入单条
hset hash_a a 1
hset hash_a b 2
插入多条
hmset hash_a c 3 b 4
查找数据
hget hash_a b 查看单条
hgetall hash_a 查看全部的值
hkeys hash_a 查看所有的键值
hvals hash_a 查看所有的值
修改数据
hset hash_a a name 修改key a的值为name
以上语句是有则增无则改
删除数据
hdel hash_a a 删除hash_a中键a的值
删除全部
del hash_a
set类型
无序的字符集合,元素具有唯一性,不重复
添加数据
sadd set_a 'hello world' 添加一条数据
sadd set_a my name 添加两条数据
sadd set_a is bu yi yang de 添加多条数据
查看数据
smembers set_a 查看集合set_a的数据
数据无序
删除数据
spop set_a 随机删除一个
spop set_a 3 随机删除3个
srem set_a my 指定删除my
srem set_a name is 指定删除多个
zset类型
每一个成员都会有一个分数 score 与之关联,成员是唯一的,但是分数可以重复
实际上避免分数宠物
添加数据
zadd key score value
zadd zset_a 1 hello 添加一条数据
zadd zset_a 1 hello 2 world 3 python 添加多条数据
分数可以设置小数,但是小数只能有一位
查找数据
通过索引查找zrange key index_start index_end
通过分数查找zrangebyscore key min_score max_score
通过值查看分数 zscore key value
zrange zset_a 0 10 查看索引为0-10范围的值
zrangebyscore zset_a 2 4 查看分数问哦2-4之间的值
zscore zset_a hello 通过值查看分数
删除数据
单个删除 zrem key member
多个删除 zrem key member1 member2
通过分数删除 zremrangebyscore key min_score max_score
通过索引删 zremrangebyrank key index_start index_end
zrem zset_a hello 指定删除单个值
zrem zset_a my name 删除多个值
zremrangebyscore zset_a 2 4 删除分数在2-4之间的数据
zremrangebyrank zset_a 3 5 删除索引在3-5之间的数据