Redis基本操作说明及常用五大数据类型

基本操作说明

函数 使用说明 举例 显示结果
select(不分大小写) 选择数据库,默认数据库有0到15 select 0 OK
DBSIZE 查看当前数据库key的数量 DBSIZE 5
keys 查看当前内容 keys * 显示当前数据库所有key值
FLUSHDB 清空当前数据库的key的数量
FLUSHALL 清空所有库的key
exists key 判断key是否存在 若存在返回1,不存在返回0
TYPE key 判断key的类型 返回key的类型

一、redis-string(单K单V)

说明:string是redis基本的类型,一个key对应一个value
string可以包含任意数据,最大不可超过512M

函数使用说明
函数 使用说明 举例 显示结果
set 设置值 set name kk 增加一条记录
get 通过key获取值 get name “kk”
mset 设置多个值 mset name1 mm name2 ll 增加2条记录
mget 获取多个值 mget name name1 name 2 “kk” “mm” “ll”
append 添加字段 append name mmll “kkmmll”
del 删除指定字段 del name 删除
strlen 返回字符串长度 strlen name1 2
incr 字段值需整数,执行一次字段的值+1 incr int1 1
incrby 字符串的值定增加多少 incrby int1 2 3
decrby 字符串的值定减去多少 decrby int 1 3 0
getrange 获取指定区间范围内的值,若显示全部 0 -1 getrange name 0 -1 “kkmmll”
setrange 从第几位开始替换 setrange name 0 l “lkmmll”

二、redis-list(单K多V)

说明:列表是简单的字符串列表,按照插入顺序排序,可以添加一个元素列表的头部(左边)或者尾部(右边)它的底层实际是个链表
注:无法插入到string类型的key值中

函数使用说明

key list2
value ‘1’ ‘2’ ‘3’ ‘4’ ‘5’
下标 0 1 2 3 4

函数 使用说明 举例 显示结果
lpush 从左插入,读取都是从左到右,可以插入多个 lpush key value[value] 返回插入的是个数
rpush 从右插入,读取都是从左到右,可以插入多个 rpush key value[value] 返回插入的是个数
lrange 获取指定长度,返回插入的是目前第几个数(或者展示key中有几个值) lrange key 0 -1 ‘1’ ‘2’ ‘3’ ‘4’ ‘5’
lpop 移除最左元素,返回被弹出的值 lpop key 1
rpop 移除最右元素,返回被弹出的值 rpop key 5
lindex lindex key index;根据索引下标获得元素(从上到下) lindex key 0 1
llen 求出列表长度,返回长度值 llen key 5
lrem lrem key N value;删除N个Value(删除2个1),有删除返回1,一个都没删除返回0 lrem key 2 1 1
rpoplpush rpoplpush key1 key2;将list1中最后一个压入list2中第一位,返回结果为list1最后一位,也可以说是插入list2中的值 rpoplpush list1 list2
lset lset key index value;将列表key中的第一位换成X lset list2 0 X 返回OK
linsert linsert key before/after x php;在key字段之前/之后加字段PHP linsert list2 befort x php 返回目前KEY的长度
del del key;删除key del list2 返回1表示删除成功

三、redis-Hash

hash事一个键值对集合
键对应的值类似于python中字典

函数使用说明
函数 使用说明 举例 显示结果
hset hset key filed value;设定一个hash值 hset hm id 11 返回 value中的个数
hget hget key filed;取出一个指定filed的值 hget hm id 返回取出的值
hmset hmset key filed value [filed value]; 设定多个hash值 hmset hm4 id 1 name kk age 18 sex 0 返回OK
hmget hmget key filed[filed] ;取出指定的filed值 hmget hm4 id name ‘1’,‘kk’
hgetall hgetall key;取出所有的内容 hgetall hm4 ‘id’ ‘1’ ‘name’ ‘kk’ ‘age’ ‘18’ ‘sex’ ‘0’
hdel hdel key filed;删除指定filed hdel hm4 id 删除成功返回1
hlen hlen key;显示key对应filed个数 hlen hm4 返回4
hexists hexists key filed;判断key对应的value中的某个值 hexists hm4 id 存在返回1
hkeys hkeys key;显示key中所有的键 hkeys hm4 ‘id’ ‘name’ ‘age’ ‘sex’
hvals hvals key;显示key中所有的值 hkeys hm4 ‘1’ ‘kk’ ‘18’ ‘0’

四、redis-set(不重复序列)

Set(集合)无序集合

函数使用说明
函数 使用说明 举例 显示结果
sadd sadd key member[menber];增加一个无序集合 sadd st 1 2 3 4 5 返回结果为5,增加了5个数
smembers smembers key;显示key中的集合 smembers sadd ‘1’ ‘2’ ‘3’ ‘4’ ‘5’
sismenber sismenber key menber;显示key的集合中指定值是否存在 sismenber st 1 若存在,返回1
scard scard key;显示key的集合里面的元素个数 scard st 5
srem srem key member;删除key中的指定的元素,可删除多个 srem st 5 返回删除参数个数
srandmember srandmember key count;从key中随机出来count个数 srandmember st 1 随机出现一个元素
spop spop key [conut];随机出栈count个元素,默认一个 spop st 2 随机出来2个,原st减少2个,显示随机出来2个
smove smove source destination member;将source中指定的元素移动到destination中 smove st st1 1 显示结果为移动1个
SDIFF SDIFF key [key];差集,显示仅第一个set存在,不在第二个set中存在的值 SDIFF st st1
SINTER SINTER key [key];交集,显示第一个set和第二个set共同存在的元素 SINTER st st1
SUNION SUNION key [key] SUNION st st1;并集,显示一个set和第二个set中除共同值之外的两个set的值

四、redis-Zset

Zset有序集合

函数使用说明
函数 使用说明 举例 显示结果
zadd zadd key [排序的值 元素];增加Zset有序集合 zadd zst 50 v1 60 v2 70 v3 90 v4 80 v5 显示建立的zset中含有几个元素
zrange zrange key start endwithscores[];查看排序后元素的内容加上withscores后,排序值也会显示 zadd zst 0 -1
zrangebyscore zrangebyscore key 开始排序值 结束排序值 [limit] start count;显示根据排序值删选出元素,根据删选出的元素,limit 从第start开始选取count条 zrangebyscore zst 50 90 limit 2 1 显示V3
zcard zcard key;求key的总条数 zcard zst 5
zcount zcount 开始排序值,结束排序值;求开始排序到结束排序的个数 zcount 50 60 2
zrank zrank key 元素;返回元素对应的下标,从0开始 zrank zst v2 1
zrem zrem key 元素;根据元素删除 zrem zst v1 成功返回1

注:zrangebyscore中结束排序值如果前面加( 则表示不包含结束排序值
如:zrangebyscore zset01 50 (70

猜你喜欢

转载自blog.csdn.net/qq_37697566/article/details/104755092
今日推荐