Title

redis数据类型和字符串操作

redis数据类型

1 字符串 ===》做缓存,做计数器
'''
	set key value
	get key
	mset k1 v1 k2 v2 ...
	mget k1 k2 ...
	setex key exp value
	incrby key increment
'''
2 列表===》消息队列
'''
	rpush key value1 value2 ...
	lpush key value1 value2 ...
	lrange key bindex eindex
	lindex key index
	lpop key | rpop key
	linsert key before|after old_value new_value
'''
3 哈希===》缓存
'''
	hset key field value
	hget key field
	hmset key field1 value1 field2 value2 ...
	hmget key field1 field2
	hkeys key
	hvals key
	hdel key field
'''
4 无序集合===》去重
'''
	sadd key member1 member2 ...
	sdiff key1 key2 ...
	sdiffstore newkey key1 key2 ...
	sinter key1 key2 ...
	sunion key1 key2 ...
	smembers key
	spop key
'''
5 有序集合===》排行榜
'''
    zadd key grade1 member1 grade2 member2 ...
	zincrby key grade member
	zrange key start end
	zrevrange key start end
'''

redis之字符串类型

reedis是key-value形式存储
redis 数据存在内存中,如果断电,数据丢失--》需要有持久化

1 set(name,value,ex=none,px=none,nx=FAlse,xx=False)
	#ex  过期时间==》秒
    #px  过期时间==》毫秒
    # nx,如果设置为True,则只有name不存在时,当前set操作才执行, 值存在,就修改不了,执行没效果
    # xx,如果设置为True,则只有name存在时,当前set操作才执行,值存在才能修改,值不存在,不会设置新值
2 get(name)
3 setnx(name,value) 等于 set(name,value,nx=True)
4 setex(name,value,time) 等于 set(name,value,ex=3)
5 psetex(name,time,value) 等于 set(name,px=3,value)
6 mset(*args, **kwargs)
7 mget(keys, *args)
8 getset(name, value)
9 getrange(key, start, end)
10 setrange(name, offset, value)
11 setbit(name, offset, value)
12 getbit(name, offset)
13 bitcount(key, start=None, end=None)
14 bitop(operation, dest, *keys)
15 strlen(name)
16 incr(self, name, amount=1)#自增,不会出并发安全问题,单线程架构,并发量高
17 incrbyfloat(self, name, amount=1.0)
18 decr(self, name, amount=1)
19 append(key, value)
'''
set
get
strlen 字节长度
incr
decr
'''
posted @ 2023-06-22 16:54  哈哈哈哼  阅读(16)  评论(0编辑  收藏  举报