zoukankan      html  css  js  c++  java
  • Redis数据类型

    Redis数据类型
    1、字符串(String)
    	Redis中的字符串是一个字节序列。Redis中的字符串是二进制安全的,这意味着它们的长度不由任何特殊的终止字符决定。因此,可以在一个字符串中存储高达512兆字节的任何内容。
    
    	# 示例:
    	
    	# 验证密码
    	127.0.0.1:6379> auth 1234
    	OK
    	
    	# 添加一条数据,key:name,value:"DarkRanger"
    	127.0.0.1:6379> set name "DarkRanger"
    	OK
    	
    	# 查询key为name的数据
    	127.0.0.1:6379> get name
    	"DarkRanger"
    
    	# 更新key为name数据的,value:"wrcold520"
    	127.0.0.1:6379> set name "wrcold520"
    	OK
    	
    	# 获取更新后的数据,key:name
    	127.0.0.1:6379> get name
    	"wrcold520"
    
    	# 更新key为"name"数据的key为"username"
    	127.0.0.1:6379> rename name username
    	OK
    
    	# 查询现有的所有key
    	127.0.0.1:6379> keys *
    	1) "username"
    	
    	# 查询key为"username"的数据
    	127.0.0.1:6379> get username
    	"wrcold520"
    
    2、列表(List)
    	Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边),一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
    
    	#常用命令:lrange lpush rpush lset lrem len linsert lpop ltrim
    	
    	##### 1、LPUSH key value [value ...]
    	# 将一个或多个值 value 插入到列表 key 的表头
    	# 如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表头
    	127.0.0.1:6379> lpush books "b01" "b02"
    	(integer) 2
    	
    	##### 2、LRANGE key start stop
    	# 返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。
    	# 下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1表示列表的第二个元素,以此类推。
    	# 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b02"
    	2) "b01"
    
    	
    	##### 3、RPUSH key value [value ...]
    	# 将一个或多个值 value 插入到列表 key 的表尾(最右边)。
    	# 如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表尾
    	127.0.0.1:6379> rpush books "b03"
    	(integer) 3
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b02"
    	2) "b01"
    	3) "b03"
    
    	127.0.0.1:6379> lpush books "b04"
    	(integer) 4
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b04"
    	2) "b02"
    	3) "b01"
    	4) "b03"
    
    	##### 4、LSET key index value
    	# 将列表 key 下标为 index 的元素的值设置为 value 。
    	# 当 index 参数超出范围,或对一个空列表( key 不存在)进行 LSET 时,返回一个错误。
    	127.0.0.1:6379> lset books 0 "b0404"
    	OK
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b0404"
    	2) "b02"
    	3) "b01"
    	4) "b03"
    
    	##### 5、LREM key count value
    	# 根据参数 count 的值,移除列表中与参数 value 相等的元素。
    	127.0.0.1:6379> lrem books 2 "b01"
    	(integer) 1
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b0404"
    	2) "b02"
    	3) "b03"
    
    	127.0.0.1:6379> rpush books "b15"
    	(integer) 4
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b0404"
    	2) "b02"
    	3) "b03"
    	4) "b15"
    
    	##### 6、LINSERT key BEFORE|AFTER pivot value
    	# 将值 value 插入到列表 key 当中,位于值 pivot 之前或之后。
    	127.0.0.1:6379> linsert books before "b15" "b1501"
    	(integer) 5
    	127.0.0.1:6379> linsert books after "b15" "b1502"
    	(integer) 6
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b0404"
    	2) "b02"
    	3) "b03"
    	4) "b1501"
    	5) "b15"
    	6) "b1502"
    
    	##### 7、LLEN key
    	# 返回列表 key 的长度。
    	# 如果 key 不存在,则 key 被解释为一个空列表,返回 0 .
    	# 如果 key 不是列表类型,返回一个错误。
    	127.0.0.1:6379> llen books
    	(integer) 6
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b0404"
    	2) "b02"
    	3) "b03"
    	4) "b1501"
    	5) "b15"
    	6) "b1502"
    
    	##### 8、LPOP key
    	# 移除并返回列表 key 的头元素。
    	127.0.0.1:6379> lpop books
    	"b0404"
    
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b02"
    	2) "b03"
    	3) "b1501"
    	4) "b15"
    	5) "b1502"
    
    	##### 9、LTRIM key start stop
    	# 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
    	127.0.0.1:6379> ltrim books 2 -1
    	OK
    	127.0.0.1:6379> lrange books 0 -1
    	1) "b1501"
    	2) "b15"
    	3) "b1502"
    
    3、集合(Set)
    	Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
    	Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
    	集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。
    
    	
    
    2、散列/哈希
    	Redis散列/哈希(Hashes)是键值对的列表。Redis散列/哈希是字符串字段和字符串值之间的映射。因此,它们用于表示对象。
    

      

  • 相关阅读:
    打印机无法访问打印机怎么连
    IDEA 2018 LICENSE SERVER
    idea 项目打包发布
    Oracle的关于小数的使用
    js代码实现购物车效果
    通过shell定时备份数据库
    (二)Linux实操之——网络配置、进程管理、服务管理、组管理、YUM
    (一)Linux实操之——权限、任务调度、磁盘分区
    idea搭建简易ssm项目
    idea右键无法新建Java Class
  • 原文地址:https://www.cnblogs.com/wrcold520/p/6574876.html
Copyright © 2011-2022 走看看