首页 > 其他分享 >hash(哈希)

hash(哈希)

时间:2023-08-27 13:44:45浏览次数:33  
标签:127.0 hash 0.1 myhash 6379 f3 哈希 integer

hash(哈希)

map集合 k-map

关于哈希操作的命令一般都是以h开头的

创建一个哈希

hset
创建一个哈希
127.0.0.1:6379> hset myhash f1 hello
(integer) 1
读取一个哈希
127.0.0.1:6379> HGET myhash f1
"hello"
127.0.0.1:6379>

设置多个值 使用mset的时候如果原本的数据已经存在 那么会覆盖原本的数据

获取多个值

获取所有值 包含获取所有的k - v

 

删除一个数据 删除一个key 对应的value也会被删除

127.0.0.1:6379> HGETALL myhash
1) "f1"
2) "hello"
3) "f2"
4) "world"
127.0.0.1:6379> HDEL myhash f2
(integer) 1
127.0.0.1:6379> HGETALL myhash
1) "f1"
2) "hello"
127.0.0.1:6379>

获取hash的长度

127.0.0.1:6379> HLEN myhash
(integer) 1
127.0.0.1:6379> HSET myhash f2 world
(integer) 1
127.0.0.1:6379> HLEN myhash
(integer) 2
127.0.0.1:6379>

判断某一个字段是否存在

127.0.0.1:6379> HEXISTS myhash f2
(integer) 1
127.0.0.1:6379> HEXISTS myhash f3
(integer) 0
127.0.0.1:6379>

获得所有的key

127.0.0.1:6379> HKEYS myhash
1) "f1"
2) "f2"
127.0.0.1:6379>

获得所有的value

127.0.0.1:6379> HVALS myhash
1) "hello"
2) "world"
127.0.0.1:6379>

设置自增和自减


127.0.0.1:6379> HSET myhash f3 1
(integer) 1
127.0.0.1:6379> HGET myhash f3
"1"
127.0.0.1:6379> HINCRBY myhash f3 1
(integer) 2
127.0.0.1:6379> HGET myhash f3
"2"
127.0.0.1:6379> HINCRBY myhash f3 2
(integer) 4
127.0.0.1:6379> HGET myhash f3
"4"
127.0.0.1:6379>

127.0.0.1:6379> HINCRBYFLOAT myhash f3 0.1
"4.1"
127.0.0.1:6379>

#####################
如果这个key不存在可以创建 存在就不创建
127.0.0.1:6379> HSETNX myhash f3 4.1
(integer) 0
127.0.0.1:6379>
 

标签:127.0,hash,0.1,myhash,6379,f3,哈希,integer
From: https://www.cnblogs.com/AnJiaYu/p/17660200.html

相关文章

  • hashtable-part02
    454-四数相加相关题解参考:https://leetcode.cn/problems/4sum-ii/solutions/65894/chao-ji-rong-yi-li-jie-de-fang-fa-si-shu-xiang-jia/一开始看是一点思路都没有,又是看了别人的巧妙题解,又是怀疑我是否和大佬一个物种的一天。sum分为两组,hashmap存两个数组的和,AB;然后计......
  • [刷题记录Day6]Leetcode哈希表
    No.1题目有效的字母异位词思路每个字符频率都相同,于是把字母表映射到长度为26的数组上代码publicbooleanisAnagram(Strings,Stringt){intlenS=s.length(),lenT=t.length();if(lenT!=lenS)returnfalse;int[]alphabet=newint[26]......
  • [刷题记录Day7]Leetcode哈希表
    No.1题目四数相加II思路很妙的办法:有四个数组A、B、C、D,用hashMap记录【A、B中数字之和】+【这些和出现的次数】,再遍历C、D中数字组合,寻找【0-C、D中数字之和】在hashMap中出现的次数,并累加本质上,这是把4个数组简化成了2个数组代码publicintfourSumCount(int[]nums1,......
  • [javase高级] HashMap实现原理
    HashMap是数组+链表实现的,既然用到hash散列,那么肯定不可避免的会出现冲突问题,HashMap解决冲突的方法是拉链法,因为这里有用到数组,那么当容量不足的时候就需要进行扩容操作了,在HashMap中有个术语叫冲突,当冲突几率越来越高的时候就需要进行扩容操作了那什么情况就叫冲突几率高呢?就是......
  • 哈希表 part 1
    相关阅读:https://docs.qq.com/doc/DUEtFSGdreWRuR2p4当遇到了要快速判断一个元素是否出现集合里的时候,就需要考虑哈希法。1.两数之和deftwoSum(self,nums,target):""":typenums:List[int]:typetarget:int:rtype:List[int]......
  • 说一下 HashMap 的实现原理?
    HashMap是Java集合框架中的一个重要类,用于存储键值对。它的实现基于哈希表(HashTable)数据结构,其基本原理是通过将键映射到一个索引,然后在该索引位置存储对应的值。以下是HashMap的主要实现原理:哈希函数:当你向HashMap中添加键值对时,首先会将键通过哈希函数转换成一个整数,该......
  • Python数据结构:哈希表
    哈希散列(哈希)是电脑科学中一种对资料的处理方法,通过某种特定的函数/算法(称为散列函数/算法)将要检索的项与用来检索的索引(称为散列,或者散列值)关联起来,生成一种便于搜索的数据结构(称为散列表)。哈希表是什么哈希表(散列表)是根据键(Key)直接访问内存存储位置的数据结构。根据键(Key)值......
  • leetcode-1-two sum(brute force, hash table)
    Wecanusebruteforcetogetit,usetwoforloopiandj,whichi=1:nandj=i:n.However,thetimecomplexityisO(n^2),whichisnotefficient.Usehashtable,thefirstthingisfirststoreeveryelementtotable,thendotraverseagaintolookup......
  • 哈希,列表,集合,有序集合,慢查询,pipeline,发布订阅,bitmap位图,Hyperloglog
    目录1哈希类型2列表类型3集合类型4有序集合(zset)5慢查询6pipeline与事务7发布订阅8Bitmap位图9HyperLogLog1哈希类型###1---hget,hset,hdelhgetkeyfield#获取hashkey对应的field的value时间复杂度为o(1)hsetkeyfieldvalue#设置hashkey对应的field的value......
  • 高性能网络 SIG 月度动态:ANCK 首次支持 SMCv2.1,virtio 规范支持隧道报文内头部哈希
    高性能网络SIG(SpecialInterestGroup) :在云计算时代,软硬件高速发展,云原生、微服务等新的应用形态兴起,让更多的数据在进程之间流动,而网络则成为了这些数据流的载体,在整个云时代扮演着前所未有的重要角色。在这个万物互联的时代,云上的网络通信效率对各种服务至关重要,高性能网络兴趣......