Redis 基本数据类型试炼
原创
©著作权归作者所有:来自51CTO博客作者gblfy的原创作品,请联系作者获取转载授权,否则将追究法律责任
文章目录
1. String 类型
# 设置单个值
set key value
# 获取单个值
get key
# 设置多个值
mset key1 value1 key2 value2 。。。
# 获取多个值
mget key1 key2 。。。
# 自增1 incr key 默认:从0+1
incr num
# 自增2+布长 incr key 布长大小 例如:每次增加2
incr num 2
# 删除key
2. 散列hashes
# 设置一个对象以及属性
hset redis的key 属性1 值1 属性2 值2
# 设置一个对象以及属性
hset userinfo username age 18 address beijing
# 获取一个对象的单个属性
hget userinfo username
hget userinfo age
hget userinfo address
# 获取一个对象的多个属性
hget userinfo username age address
# 获取一个对象的所有属性
hgetall userinfo
# 统计一个对象的有多少个属性
hlen userinfo
# 自增
# 格式:hincrby 对象 属性key 布长
hincrby userinfo age 2
# 删除对象的某一个属性
hdel userinfo age
# 删除整个对象
3. 列表lists(双向链表)
# 左侧插入
lpush student zhangsan lisi wangwu
# 右侧插入
rpush student yuxin yuze
# 左侧弹出
lpop student
# 右侧弹出
rpop student
# 查看 左右都包含 角标
4. 集合set(自动去重)
集合set(自动去重)
# 插入多个值
# 格式:sadd key(对象) value1 value2 value3 。。。
sadd nums 1 2 3
# 获取所有数据
# 格式:snumbers key(对象)
snumbers nums
# 移除对象中指定的元素
# 格式:srem key(对象) 元素
srem nums 2
# 随机移除对象中的元素
# 格式:spop key(对象)
spop nums
# 准备数据
sadd nums1 1 2 3
sadd nums2 2 3 4
# 交集
sinter nums1 nums2
结果是2 3
# 差集 1 以第一个key(对象)和第2个key(对象)进行差集比较
sdiff nums1 nums2
结果是1
sdiff nums2 nums1
结果是4
# 并集
5. 有序集合sorted(自动去重)
# 有序集合sorted(自动去重)
zadd rank 66 zhangsan 88 lisi 77 wangwu 99 zhaoliu
# 排序倒序
zrange rank 0 3
# 按照积分从小到大排序获取
zrangebyscore rank 77 99
# 删除对象中的元素
zrem rank zhaoliu
# 获取key(对象)有多少个元素
zcard rank
# 统计77分到88分的个数
zcount rank 77 88
获取某个key(对象)中的指定的元素的位置
zrank rank wangwu
# 翻转获取位置