Redis中五种数据类型简单操作

Redis中五种数据类型简单操作

提出问题

Redis五种数据类型的简单增删改查命令???

解决问题

假设你已经安装Redis服务器;
假设你已经打开Redis cli命令行工具;
假设你对Redis有所了解;

Redis简单增删改查例子

例一:字符串的增删改查

#增加一个key为ay_key的值
127.0.0.1:6379> set ay_key "ay"
OK
#查询ay_key的值
127.0.0.1:6379> get ay_key
"ay"
#修改ay_key的值
127.0.0.1:6379> set ay_key "new_ay"
OK
127.0.0.1:6379> get ay_key
"new_ay"
#修改ay_key名称
127.0.0.1:6379> rename ay_key new_ay_key
OK
127.0.0.1:6379> keys *
1) "new_ay_key"
#删除ay_key
127.0.0.1:6379> del ay_key
(integer) 0
#查询是否存在ay_key 0
127.0.0.1:6379> exists ay_key
(integer) 0

例二:Set集合的增删改查

#删除当前选择数据库中的所有key
127.0.0.1:6379> flushdb
OK
#生成set集合,添加4个数据
127.0.0.1:6379> sadd set_ay_key "ay" "al" "xy" "xl"
(integer) 4
#查询set里面所有值
127.0.0.1:6379> smembers set_ay_key
1) "xy"
2) "al"
3) "ay"
4) "xl"
#删除value为"xl" , 返回 1 如果没有返回 0
127.0.0.1:6379> srem set_ay_key "xl"
(integer) 1
127.0.0.1:6379> smembers set_ay_key
1) "xy"
2) "al"
3) "ay"
#添加value为"xl"
127.0.0.1:6379> sadd set_ay_key "xl"
(integer) 1
127.0.0.1:6379> smembers set_ay_key
1) "xy"
2) "al"
3) "ay"
4) "xl"
#添加value为"xl" 添加不进去,但也不报错,set是不允许重复的
127.0.0.1:6379> sadd set_ay_key "xl"
(integer) 0
#不多解释
127.0.0.1:6379> sadd set_ay_key "xl"
(integer) 0
#不多解释
127.0.0.1:6379> sadd set_ay_key "xl"
(integer) 0

例三:List集合的增删改查

#添加key为list_ay_key的list集合
127.0.0.1:6379> lpush list_ay_key "ay" "al" "xy" "xl"
(integer) 4
#查询key为list_ay_key的集合
127.0.0.1:6379> lrange list_ay_key 0 -1
1) "xl"
2) "xy"
3) "al"
4) "ay"
#往list尾部添加元素
127.0.0.1:6379> rpush list_ay_key "together"
(integer) 5
#往list头部添加元素
127.0.0.1:6379> lpush list_ay_key "first"
(integer) 6
#查询list集合
127.0.0.1:6379> lrange list_ay_key 0 -1
1) "first"
2) "xl"
3) "xy"
4) "al"
5) "ay"
6) "together"
#更新index为0的值
127.0.0.1:6379> lset list_ay_key 0 "update_first"
OK
127.0.0.1:6379> lrange list_ay_key 0 -1
1) "update_first"
2) "xl"
3) "xy"
4) "al"
5) "ay"
6) "together"
#删除index为1上的值
127.0.0.1:6379> lrem list_ay_key 1 "update_first"
(integer) 1
127.0.0.1:6379> lrange list_ay_key 0 -1
1) "xl"
2) "xy"
3) "al"
4) "ay"
5) "together"

例四:Hash集合(类似Java)的增删改查

127.0.0.1:6379> flushdb
OK
#生成hash集合,并添加key 为uuid_one value 为"12345"
127.0.0.1:6379> hset hash_ay_key "uuid_one" "12345"
(integer) 1
127.0.0.1:6379> hlen hash_ay_key
(integer) 1
#返回集合所有的key
127.0.0.1:6379> hkeys hash_ay_key
1) "uuid_one"
#返回集合所有value
127.0.0.1:6379> hvals hash_ay_key
1) "12345"
#集合添加值
127.0.0.1:6379> hset hash_ay_key "uuid_two" "22222"
(integer) 1
#集合添加值
127.0.0.1:6379> hset hash_ay_key "uuid_three" "33333"
(integer) 1
#获得key为uuid_one的值
127.0.0.1:6379> hget hash_ay_key uuid_one
"12345"
#删除key为uuid_three的值
127.0.0.1:6379> hdel hash_ay_key uuid_three
(integer) 1
127.0.0.1:6379> hkeys hash_ay_key
1) "uuid_one"
2) "uuid_two"
#获得所有,包括key和value
127.0.0.1:6379> hgetall hash_ay_key
1) "uuid_one"
2) "12345"
3) "uuid_two"
4) "22222"
#更新key为uuid_one的值
127.0.0.1:6379> hset hash_ay_key uuid_one "11111"
(integer) 0
127.0.0.1:6379> hset hash_ay_key "uuid_one" "11111"
(integer) 0
127.0.0.1:6379> hgetall hash_ay_key
1) "uuid_one"
2) "11111"
3) "uuid_two"
4) "22222"

例五:SortedSet集合的增删改查

SortedSet是有序的set集合

#sorted set添加值ay 排序值为 1
127.0.0.1:6379> zadd zset_ay_key 1 "ay"
(integer) 1
127.0.0.1:6379> zadd zset_ay_key 2 "al"
(integer) 1
127.0.0.1:6379> zadd zset_ay_key 3 "xy"
(integer) 1
127.0.0.1:6379> zadd zset_ay_key 4 "xl"
(integer) 1
#查询所有的值
127.0.0.1:6379> zrange zset_ay_key 0 -1
1) "ay"
2) "al"
3) "xy"
4) "xl"
#删除所有的值
127.0.0.1:6379> zrem zet_ay_key "xl"
(integer) 0
127.0.0.1:6379> zrange zset_ay_key 0 -1
1) "ay"
2) "al"
3) "xy"
4) "xl"

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • Redis教程(五):Set数据类型

    一.概述: 在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加.删除或判断某一元素是否存在等操作.需要说明的是,这些操作的时间复杂度为O(1),即常量时间内完成次操作.Set可包含的最大元素数量是4294967295.       和List类型不同的是,Set集合中不允许出现重复的元素,这一点和C++标准库中的set容器是完全相同的.换句话说,如果多次添加相同元素,Set中将仅保留该元素的一份拷贝.和List类型相比,Set类

  • redis数据类型_动力节点Java学院整理

    Redis支持5种数据类型,它们描述如下: Strings - 字符串 Redis的字符串是字节序列.在Redis中字符串是二进制安全的,这意味着他们有一个已知的长度,是没有任何特殊字符终止决定的,所以可以存储任何东西,最大长度可达512兆. 例子 redis 127.0.0.1:6379> SET name "yiibai" OK redis 127.0.0.1:6379> GET name "yiibai" 在上面的例子使用Redis命令set和ge

  • Redis教程(六):Sorted-Sets数据类型

    一.概述: Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中.它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数(score)与之关联,Redis正是通过分数来为集合中的成员进行从小到大的排序.然而需要额外指出的是,尽管Sorted-Sets中的成员必须是唯一的,但是分数(score)却是可以重复的.     在Sorted-Set中添加.删除或更新一个成员都是非常快速的操作,其时间复杂度为集合中成员数量的对数.由于So

  • Redis 数据类型的详解

    Redis 数据类型的详解 概要: Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 . string类型是Redis最基本的数据类型,一个键最大

  • Redis教程(四):Hashes数据类型

    一.概述: 我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Age等.如果Hash中包含很少的字段,那么该类型的数据也将仅占用很少的磁盘空间.每一个Hash可以存储4294967295个键值对. 二.相关命令列表: 命令原型 时间复杂度 命令描述 返回值 HSET key field value O(1) 为指定的Key设定Field/Value对,如果Key不

  • Redis教程(二):String数据类型

    一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型的Value最多可以容纳的数据长度是512M. 二.相关命令列表: 命令原型 时间复杂度 命令描述 返回值 APPENDkeyvalue O(1) 如果该Key已经存在,APPEND命令将参数Value的数据追加到已存在Value的末尾.如果该Key不存在,APPEND命令将会创建一个新的Key/V

  • Redis教程(三):List数据类型

    一.概述: 在Redis中,List类型是按照插入顺序排序的字符串链表.和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素.在插入时,如果该键并不存在,Redis将为该键创建一个新的链表.与此相反,如果链表中所有的元素均被移除,那么该键也将会被从数据库中删除.List中可以包含的最大元素数量是4294967295.       从元素插入和删除的效率视角来看,如果我们是在链表的两头插入或删除元素,这将会是非常高效的操作,即使链表中已经存储了百万条记录,该操作

  • Redis中五种数据类型简单操作

    Redis中五种数据类型简单操作 提出问题 Redis五种数据类型的简单增删改查命令??? 解决问题 假设你已经安装Redis服务器: 假设你已经打开Redis cli命令行工具: 假设你对Redis有所了解: Redis简单增删改查例子 例一:字符串的增删改查 #增加一个key为ay_key的值 127.0.0.1:6379> set ay_key "ay" OK #查询ay_key的值 127.0.0.1:6379> get ay_key "ay"

  • Redis中3种特殊的数据类型(BitMap、Geo和HyperLogLog)

    前言 Reids 在 Web 应用的开发中使用非常广泛,几乎所有的后端技术都会有涉及到 Redis 的使用.Redis 种除了常见的字符串 String.字典 Hash.列表 List.集合 Set.有序集合 SortedSet 等等之外,还有一些不常用的数据类型,这里着重介绍三个.下面话不多说了,来一起看看详细的介绍吧. BitMap BitMap 就是通过一个 bit 位来表示某个元素对应的值或者状态, 其中的 key 就是对应元素本身,实际上底层也是通过对字符串的操作来实现.Redis 从

  • 一文快速搞懂Redis的几种数据类型方式

    目录 Redis简介 Redis有几种数据类型 Redis的基本指令 String(字符串) List(列表) Set(集合) Hash(哈希) Zset(sorted set:有序集合) RedisDesktopManager数据查看工具 Redis简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(so

  • 详解SpringBoot使用RedisTemplate操作Redis的5种数据类型

    目录 1.字符串(String) 1.1 void set(K key, V value):V get(Object key) 1.2 void set(K key, V value, long timeout, TimeUnit unit) 1.3 V getAndSet(K key, V value) 1.4 Integer append(K key, V value) 1.5 Long size(K key) 2.列表(List) 2.1 Long leftPushAll(K key, V

  • java的五种数据类型解析

    不知道大家对java的简单数据类型是否了解,下面针对Java的五种类型简单数据类型表示数字和字符,进行详细的讲解和分析. 一.简单数据类型初始化 在Java语言中,简单数据类型作为类的成员变量声明时自动初始化为默认值,除非显式地声明.简单数据类型为某一方法声明局部变量时不会自动地初始化而且会导致编译器扔出类似以下的错误消息"Variable x may not have been initialized.(x变量没有初始化)"表B定义了Java简单数据类型的默认值. 二.封装类 1av

  • K8S中五种控制器的介绍以及使用

    目录 k8s的控制器类型 pod与控制器之间的关系 Deployment(无状态化应用) 状态与无状态化对特点 Deployment的更新 Deployment的回滚 CronJob控制器 总结 k8s的控制器类型 Kubernetes中内建了很多controller(控制器),这些相当于一个状态机,用来控制Pod的具体状态和行为 Deployment:适合无状态的服务部署 StatefullSet:适合有状态的服务部署 DaemonSet:一次部署,所有的node节点都会部署,例如一些典型的应

  • Redis的5种数据类型与常用命令讲解

    1.redis的5种数据类型: string 字符串(可以为整形.浮点型和字符串,统称为元素) list 列表(实现队列,元素不唯一,先入先出原则) set 集合(各不相同的元素) hash hash散列值(hash的key必须是唯一的) sort set 有序集合 2.string类型的常用命令: 自加:incr 自减:decr 加: incrby 减: decrby 3.list类型支持的常用命令: lpush:从左边推入 lpop:从右边弹出 rpush:从右变推入 rpop:从右边弹出

  • 对pandas中两种数据类型Series和DataFrame的区别详解

    1. Series相当于数组numpy.array类似 s1=pd.Series([1,2,4,6,7,2]) s2=pd.Series([4,3,1,57,8],index=['a','b','c','d','e']) print s2 obj1=s2.values # print obj1 obj2=s2.index # print obj2 # print s2[s2>4] # print s2['b'] 1.Series 它是有索引,如果我们未指定索引,则是以数字自动生成. 下面是一些例

  • Python中五种列表拷贝的方法

    目录 1. 赋值操作 2. 使用copy操作 3. 使用list()构造函数 4. 使用索引 5. 列表生成式 6 总结 1. 赋值操作 最容易想到的就是我们可以使用赋值操作来直接复制列表, 代码如下: copied_list=original_list 此时,original_list 和copyed_list 都将指向同一个列表对象. 举例如下: original_list=[1,2,3] #Copying list using assignment operation copied_lis

  • Python中11种NumPy高级操作总结

    目录 1.数组上的迭代 2.数组形状修改函数 1.ndarray.reshape 2.ndarray.flat 3.ndarray.flatten 3.数组翻转操作函数 1.numpy.transpose 2. numpy.ndarray.T 3.numpy.swapaxes 4.numpy.rollaxis 4.数组修改维度函数 1.numpy.broadcast_to 2.numpy.expand_dims 3.numpy.squeeze 5.数组的连接操作 1.numpy.stack 2.

随机推荐