Redis常用命令

Redis中常见的数据类型有:String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Sorted_Set(有序集合)、BitMap(位图)

一、Key

 1. DEL
	删除一个或多个key
	不存在的key会被忽略
		DEL key
		1
	返回值:被删除key的数量
 2. EXISTS
	检查key是否存在
		EXISTS key
		0
	返回值:若存在返回1,不存在返回0
 3. EXPIRE
	为给定的key设置生存时间,当时间为0时,自动删除key(单位秒)
		EXPIRE key 10
		1
	返回值:设置成功返回1
		   不存在或者不能设置时间时,返回0
 4. KEYS
	模糊查询
		KEYS 查询条件
	返回值:符合查询条件的列表
 5. PERSIST
	移除key的存在时间限制
		PERSIST key
		1
	返回值:移除成功,返回1
		    key不存在或者吗,没有设置存在时间,返回0
 6. TTL
	显示key的存在时间,单位为秒
		TTL key
		-2
	返回值:不存在返回-2
			存在但没设置存在时间,返回-1
			存在且设置存在时间,返回剩余时间秒数

二、String


 1. DECRBY
	将key的值减去一个数,如果不存在,key的初始值为0,然后再执行DECRBY
	如果包含错误类型,则返回一个错误
		DECRBY key 10
		-10
	返回值:减去设置值后key的值
 2. GET
	返回key的字符串值
		GET key
		null
	返回值:不存在时,返回null,存在则返回对应值
			如果不是字符串类型,则返回一个错误
 3. INCRBY
	将key加上一个给定值,如果不存在则初始值为0,然后再执行INCRBY命令,如果包含错误类型,返回一个错误
		INCRY key 10
		10
	返回值:可以加上给定值后的值
 4. MGET
	返回所有key值,可以是多个,如果里面的某个key不存在,则那个值返回null,其他正常返回
		MGET key key1 key2
	返回值:包含所有key值的列表
 5. MSET
	同时设置一个或多个key-value对,如果设置的key已经存在值,则覆盖旧值
		MSET key "123" key1 "111" key2 "222"
		OK
		MGET key key1 key2
		"123"
		"111"
		"222"
	返回值:OK
 6. SETkey设置一个值,如果key已存在,则覆盖旧值,无视类型
		SET key "123"
		OK
		GET key
		"123"
	返回值:Redis 2.6.12版本前,总是返回OK
		   Redis 2.6.12版本后,成功返回OK,如果设置了 NX 或者 XX ,
		   但因为条件没达到而造成设置操作未执行,那么命令返回空批量回复  
 7. SETEX
	给key设置一个值,并设置存在时间,会覆盖旧值,时间单位是秒
		SETEX key 10 "123"
		OK
		GET key
		"123"
	返回值:设置成功返回OK
			时间参数不合法,返回错误	
 8. SETNX
	给key设置一个值,如果不存在,则SETNX不做任何动作
		SETNX key "123"
		1
		SETNX key "000"
		0
		GET key
		"123"
	返回值:设置成功,返回1
		    设置失败,返回0

三、Hash

 1. HSET
	在哈希表key中设置一个fieId和对应的value值,若表不存在则先创建一个新表再执行命令,若fieId已存在值,则覆盖旧值
		HSET [表名] [fieId] [value]
	 返回值:若表中不存在fieId,设置一个新的fieId并设值,成功返回1,若已存在fieId,则覆盖旧值,返回0
 2. HGET
	显示哈希表key中的给定域fieId的值
		HGET [表名] [fieId]
	返回值:若存在,返回fieId里的值,若不存在返回null
 3. HDEL
	删除哈希表key中的一个或多个域,不存在将被忽略
		HDEL [表名] [fieId]
	返回值:被成功移除的域的数量,不包括被忽略的域
 4. HEXISTS
	检查哈希表key中,fieId是否存在
		HEXISTS [表名] [fieId]
	返回值:存在返回1,不存在返回0
 5. HGETALL
	显示哈希表key中所有的fieId和value
		HGETALL [表名]
	返回值:列表形式显示表中的fieId和value,若表不存在,返回空列表
 6. HINCRBY
	给哈希表key的fieId的值加上一个数,也可以加负数,相当于减去这个数,
	若不存在这个表,则会先创建一个表再执行HINCRBY操作,若fieId不存在,那么初始化为0再执行命令
		HINCRBY [表名] [fieId][数值]
	返回值:执行命令后fieId的值
 7. HKEYS
	显示哈希表key中的所有fieId
		HKEYS [表名]
	返回值:存在返回表中所有fieId的列表,若不存在返回空表
 8. HMGET
	显示哈希表key中一个或多个fieId的value值,
		HMGET [表名] [fieIds]
	返回值:存在就返回一个包含要查找的fieId的value值的列表,若表不存在就返回一个空表,
	若fieId不存在,返回null,列表的值按fieId的顺序排列
 10. HMSET
	同时在哈希表key中设置多个fieId以及对应的value值,若fieId已存在会覆盖旧值,若表不存在,则先创建表再执行命令
		HMSET [表名] [fieId] [value] [fieId] [value]
	返回值:执行成功返回OK,若表不是hash类型返回错误
 10.HVALS 
	显示哈希表key中的所有fieId的value值
		HVALS [表名]
	返回值:一个表中所有值的列表,若不存在,返回一个空表

四、List

 1. BRPOP
	在指定时间内弹出显示表中的值
		BRPOP [表名] [时间]
	返回值:如果指定时间内没有元素被弹出,则返回null和等待时间,
	反之返回一个含有两个元素的列表,第一个值为被弹出值所在的表,第二个元素为 被弹出的值
 2. LINDEX
	显示列表key中下标为index的元素,下标(index)参数 start 和 stop 都以 0 为底,也就是说,
	以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。
	你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,
	以此类推。如果 key 不是列表类型,返回一个错误
		LINDEX [表名] [index]
	返回值:列表key下标为index的元素,若下标value不存在列表值的范围内,返回null
 3. LPOP
	移除列表key的第一个元素,并显示删除的元素
		LPOP [表名]
	返回值:存在返回删除的元素,不存在返回null
 4. LPUSH
	将一个或多个值插入到列表key的表头,如果有多个值,则从左到右依次插入表头,
	如果列表不存在,则先创建一个表再执行命令,若表存在但不是列表类型时,返回一个错误
		LPUSH [表名] [value]
	返回值:执行命令后,列表存在的值的数量
 5. LSET
	将列表key下标为index的元素设置值,若index参数超出可以范围或key不存在,返回一个错误
		LSET [表名] [下标] []
	返回值:成功返回OK,否则返回错误信息
 6. RPOP
	移除列表key的末尾元素,并显示
		RPOP [表名]
	返回值:成功返回列表key的末尾元素,表不存在返回null
 7. RPUSH
	将一个或多个值插入到列表key的末尾,如果有多个值,则按从左到右的顺序插入到key末尾,
	若表不存在,则先创建一个新表再执行命令,若表存在但不是列表类型时,返回一个错误
		RPUSH [表名] []
	返回值:RPUSH执行成功后元素的长度

五、Set

 1. SADD
	将一个或多个元素加入到集合key当中,已经存在的元素将被忽略,如果key不存在,则创建一个只含有元素的集合,如果key不是集合类型,返回一个错误
		SADD [表名] [元素]
	返回值:添加到集合中的元素数量,不包括已存在的元素
 2. SCARD
	显示集合key中的元素数量
		SCARD [表名]
	返回值:集合中元素的数量,如果集合不存在,返回0
 3. SDIFF
	显示集合中的所有元素,如果是多个集合,则返回多个集合中的差集,如果集合不存在则视为空集合
		SDIFF [表名]
	返回值:差集集合的元素列表
 4. SINTER
	显示集合中的所有元素,如果是多个集合,则显示多个集合的交集,如果集合不存在则视为空集,如果给定的集合中有一个空集,则结果也为空集
		SINTER [表名]
	返回值:交集的元素列表
 5. SISMEMBER
	判断给定元素是否在集合key中
		SISMEMBER [表名] [元素]
	返回值:如果在集合中,返回1,如果不在集合中或者集合不存在,返回0
 6. SMEMBERS
	显示集合中的所有元素,若集合不存在则返回空集合
		SMEMBERS [表名]
	返回值:集合中的所有元素
 7. SPOP
	移除集合中的一个随机元素,并显示出来
		SPOP [表名]
	返回值:成功,返回被移除的元素,集合不存在或者集合为空,返回bull
 8. SRANDMEMBER
	如果命令执行时,只有集合key,则返回key中的一个随机元素
	2.6版本之后命令接受可选的count参数:
	若为正数且小于集合基数那么返回一个包含count个元素的数组,数组中的元素各不相同,如果大于等于集合基数,那么返回整个集合
	若为负数,那么命令返回一个数组,数组中的元素可能会重复多次,而数组长度为count的绝对值
		SRANDMEMBER [表名]
	返回值:只提供key时,返回一个元素,如果集合key为空,返回null,如果提供了count参数,那么返回一个数组,如果集合为空,返回空数组
 9. SUNION
	 显示给定集合的并集里面的全部元素,不存在的集合视为空集
	 	SUNION [表名]
	 返回值:并集元素列表

六、SortenSet(有序集合)

 1. ZADD
	将一个或多个member元素及其score值加入到有序技key中
	如果某个member已经是有序集合的元素,就更新member的score值,通过重新插入确保在正确位置上。
	score值可以是整数或双精度浮点数
	如果集合不存在,创建一个新的集合再执行命令,若存在但不是有序集类型,返回一个错误
		ZADD [表名] [score] [member]
	返回值:成功添加的数量,不包括更新的元素和已经存在的元素
 2. ZCARD
	显示有序集key的值的数量
		ZCARD [表名]key存在时且是有序集类型时,返回有序集值的数量,不存在返回0
 3. ZCOUNT
	返回有序集key中,score值在min和max之间的元素数量,包含min和max
		ZCOUNT [表名] [min] [max]
	返回值:范围在min和max之间的数量
 4. ZINCRBY
	在有序集key的member的score值上加上一个数值increment,increment可以是一个负数,是让score减去这个数,
	若key不存在,或member不是key的成员时,将这个添加到key中等同于ZADD用法,
	若key不是有序集类型,返回一个错误,score的值可以是整数也可以是双精度浮点数
		ZINCRBY [表名] [increment] [member]
	返回值:命令执行后新的score值,以字符串格式显示
 5. ZRANK
	显示有序集key中member的排名,按照score的顺序从小到大排序,score值最小的排名为0
		ZRANK [表名] [member]
	返回值:如果member存在,返回member的排名,如果不存在,返回null
 6. ZSCORE
	显示有序集key中member对应的score值
		ZSCORE [表名] [member]
	返回值:存在member返回对应的score值,若member不存在或者key不存在,则返回null

七、BitMap

1. SETBIT
	对key存储的字符串值,设置或清除指定偏移量的位,位的设置和清除取决于value参数,可以是0或者1,如果key不存在,自动创建一个新的字符串值,offset参数必须大于或等于0,小于2^32
		SETBIT key offset value
	返回值:指定的偏移量原来存在的位
2. GETBIT
	显示key所存储的字符串值中偏移量上的位,当offset比字符串值长度大时,或者key不存在返回0
		GETBIT key offset
	返回值:字符串值上指定的偏移量上的位
3. BIOP 
	在redis中对二进制位进行操作运算的命令,允许在多个键之间执行位级别的布尔运算,并将值结果存储到一个目标键中,支持四种基本的布尔运算:ANDORNOTXOR
	BITOP [布尔运算类型] [结果将存储的键] [key]
	ADD:与运算,全11,全00
	OR:或运算,全00,有一个1就出1
	NOT:非运算,有01,有10,全01
	XOR:异或运算,相同出0,相反出1
4.BICOUNT
	计算给定的字符串中,被设置为1的位的数量,可以通过设置额外的startend,查找指定位置的字符串中的1,而且startend的值可以设置为负数,-1就是代表最后一位。
	不存在的key会被当做空字符串处理,返回结果就为0
		BITCOUNT key [start] [end]
	返回值:被设置为1的数量
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值