我们常用的数据库分为两种,关系型数据库和非关系型数据库:
对redis的操作:
字符串 列表 哈希(字典) 集合 有序集合
字符串:
1. 设置字符串
set k v
2. 获取指定字符串
get k
3. 设置字符串,并设置时间
setex k time v
4. 同时设置多个字符串
mset k1 v1 k2 v2 ...
5. 同时获取多个字符串值
mget k1 k2 k3 ...
6. 给指定字符串追加内容
append k 新v
常用的键命令:
1. 查看当前数据库中所有键, *可以用正则语法
keys *
2. 查看当前数据库中是有指定的键
exists k
3. 设置指定键有效时间
expire k time
4. 查看指定键有效时间
ttl k
5. 删除当前redis中所有的内容
FLUSHALL
6. 删除指定的键
del k
列表:
1. 从左加入列表
lpush 列表名 v v v
2. 从右加入列表
rpush 列表名 v v v
3. 查看指定范围内的列表内容,要尾部
lrange 列表名 开始的下标 结束的下标
4. 在指定位置插入指定元素
linsert 列表名 after/before 列表中的指定元素 新的值
5. 修改指定下标的内容
lset 列表名 下标 新的值
6. 删除列表中的内容
lrem 列表名 count 要删除的值
说明:count>0时,从前往后删除指定个数的要删除的值,反之同理, 当为0的时候,全部删除
哈希(字典):
1. 设置哈希
hset 哈希名 k v
2. 设置多个哈希键值
hmset 哈希名 k1 v1 k2 v2 ...
3. 获取指定哈希的指定键值
hget 哈希名 k
4. 获取指定哈希的多个指定键值
hmget 哈希名 k1 k2 ...
5. 查看指定哈希的所有键
hkeys 哈希名
6. 查看指定哈希的所有值
hvals 哈希名
7. 删除指定哈希的指定的键
hdel 哈希名 k
集合 :
1. 设置集合
sadd 集合名 v1 v2 v3 ...
2. 获取指定集合的值
smembers 集合名
3. 删除集合
srem 集合名 v
有序集合:
1. 设置有序集合(可以添加重复内容,覆盖原有的权重)
zadd 集合名 权重1 v1 权重2 v2 ...
2. 获取指定范围有序集合的值
zrange 集合名 start end
3. 获取指定权重范围有序集合的值
zrangebyscore 集合名 score_start score_end
4. 删除指定的值
zrem 集合名 v
5. 根据权重来删除指定范围的值
zremrangebyscore 集合名 score_start score_end