redis记录

解决问题

nosql特点

 key_value存储形式:提高了数据库的扩展能力

特点
    不遵循sql标准: 不支持acid:

原子
一致
隔离
持久
    远超sql的性能

不适用场景
    需要事务支持
    基于sql结构化查询存储,处理复杂关系,需要实时查询

特点:

 

 常用操作

keys*   查看当前库的所有key
    匹配  key * 1
exists key
    判断某个key是否存在
type key
    查看key是什么类型
del  key
    删除指定的key
unlink key
    根据value选择非阻塞删除
    仅将keys从keyspace中元数据删除,真正的删除会在后续异步操作
expire key  10
    为给定的key设置过期时间
ttl  key
    查看还有多少秒过期
        -1  永不过期
        -2 表示已过期
select 
    切换数据库
dbsize
    查看当前库中有多少数量的key
flushdb
    清空当前库
flushall
    通杀所有库

 

string
    一个key对应一个value
    是二进制安全的, 可包含任何数据类型, 比如 jpg,或者序列号的对象
    redis的基本数据类型,一个redis中字符串value最多可以是512M
    
    大小限制,扩容

常用命令
	set key  value
		设置值,  通个key会覆盖之前设置的
	mset
		设置多个值
	get key
		获取值的vakue
	append <key>
		添加key的值到末尾
	strlen <key>
		获取key的长度
	setnx <key> <value>
		key不存在时,设置key的值
	incr <key>
		加1
	decr <key>
		减1
	incrby <key>  10
		指定key加10
		原子操作
			不会被线程调度机制打断
				
	decrby <key>  10
		指定key减10
	getrange name 0 3
		获取值的范围
	setrange name 0 3
		用value覆写key所存储的值, 从起始位置开始,索引从0开始
	setex age 20 value30
		设置key的时候,设置过期时间
		setex <key> <time><value>
	getset <key> <value>
		以旧换新,设置新值的时候获取旧值

 incrby:

 

列表

lplush/rpush <key><value1><value2><value3>...
从左边/右边插入一个或者多个值
如:lpush k1 v1 v2 v3
 rpush k3 v1 v2 v3



lpop/rpop <key>
从左边右边吐出一个值,值在键在

lrange <key> <start> <stop>
按照索引下标获取元素

lrange k1 0 -1   

取所有的值

rpoplpush <key1> <key2> 
从key1列表右边吐出一个值,加入到key2左边

index <key> <index>
按照索引下标取值,从左到右

llen <key>
获取列表长度

linsert k3 before 'v1' 'newv1'
在v1值的前面加个new1新值

linsert k3 after'v1' 'newv2'
在v1值的后面加个new2新值

lerm <key> <n> <value>
从左边开始删除n个value

lset <key> <index> <value>
按索引替换值

 

放值的方式不同

 

 

        数据结构

 

set集合

 

sadd key1 s3 s2

添加多个值

smembers key1
取所有值

scard key1
返回集合元素个数

哈希 hash 

 

 

有序集合zset

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值