ITKeyword,专注技术干货聚合推荐

注册 | 登录

redis hash和string类型命令操作详解

leyangjun 分享于 2014-06-28

推荐:redis:hash数据类型与操作

 Redis hash是一个string类型的field和value的映射表.一个key可对应多个field,一个field对应一个value。将一个对象存储为hash类型,较于每个字段都存储成string

2020腾讯云“6.18”活动开始了!!!(巨大优惠重现!4核8G,5M带宽 1999元/3年),
地址https://cloud.tencent.com/act/cps/redirect?redirect=1059

2020阿里云最低价产品入口,含代金券(新老用户有优惠),
地址https://www.aliyun.com/minisite/goods

<?php
    /*乐杨俊
     *redis客户端中的使用:
      
     redis:没有设置有效期时默认永久有效
    
    
     ==========string类型的方法==========
     介绍:string是redis的最简单类型,一个key对应一个value,string类型是二进制安全的。
           redis的string可以包含任何数据,比如jpg图片或者序列化的对象
           
           
    1:一个key只包含一个value值,当设置相同值时=会覆盖
      
      设置值:set name leyangjun     
      获取值:get name
      
    2:setnx:(会判断设置的值是否存在,不存在则设置)
            设置key对应的值为string类型的value,如果key已经存在则返回0,nx是not exist的意思
    
    3:setex:
            设置key对应的值为string类型的value,并指定此键值对应的有效期
            例子:setex name 10 leyangjun   -->设置name的值为leyangjun 且保存10秒    
                  get name                  -->10秒之类可以获取该值
    4:setrange:(替换值,2个就替换2个,如长度下与之前的位数,不会删除掉的哦)
            设置指定KEY的value值的字符串
            例子:setrange name 6 gmail.com       -->(6表示从第几个字符开始替换,替换的值写2个只会依序替换2个其余的不替换)将name的值替换成gmail.com
    
    5:mset: 批量设置
            一次性设置多个KEY值,成功返回OK表示所有的值都设置了,失败返回0表示没有任何值被设置
            例子:mset key1 leyangjun1 key2 leyangjun2
    6: msetnx:
            一次性设置多个key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置,但不会覆盖已经存在的key
            例子:msetnx key1 leyangjun3 key2 leyangjun2   -->如果其中任何一个key存在的话设置都不会成功
    7:get:
            获取key对应的string值,如果key不存在返回nil

    8: getset:
            设置key的值,返回key的旧值    
            例子:getset key6 30   -->获取旧值并将其设置新值
    9:getrange
            获取key的value值得字符串
            例子:getrange email 0 4   -->获取Email的值从0-4(leyan) leyangjun@qq.com,
    10:mget:批量获取
            一次性获取多个key的值,如果对应key不存在则对应返回nil
            例子:mget key1 key2 key3...
    11:incr   自增加1
            对key的值做加操作,并返回新的值-->key不存在的时候会设置key,并认为原来的value是0
            例子:incr key6     -->递增  每次都加1
    12:incrby
            同incr类似,加指定值,key不存在的时候会设置key,并认为原来的value是0
            例子:incrby key7 5     -->自增5  加
                  incrby key7 -5    -->负自增   减
    13:decr   自减意思
            对key的值做减法操作
            例子:decr key6     -->key6-1   减去1
    14:decrby
            同decr类似,指定减值
            例子:decrby key6 3   -->key6-3
                  decrby key6 -3  -->负的就是加3
    15:append
            给指定key的字符串追加value,返回新的字符串值得长度
            例子:append name .net   -->name=leyangjun   append后 leyangjun.net
    16:strlen
            取值定key的value值得长度
            例子:strlen name

           

推荐:redis基本数据类型分析,redis:string数据类型与操作,redis:set数据类型与操作

http://blog.csdn.net/shamohua/article/category/933347   redis:string数据类型与操作 redis的基本数据类型之一:string。 类型说明 定义:src/sds.h [cpp] 

=================END======================

            
            
===============hash类型===================
    介绍:redis -> hash是一个string类型的field和value的映射表
             hash特别适合对应存储对象,相较于将对象的每个字段存成单个string类型
             将一个对象存储在hash类型中会占用更少的内存,并且可以方便的存取整个对象
            
            
    0:hset *如果 key 不存在,一个新的哈希表被创建并进行 HSET 操作
            设置hash field为指定值,如果key不存在,则先创建
            例子:hset user:001 name leyangjun     会创建表

    0.2:hsetnx
            设置hash field 为指定值,如果不存在,则创建,如果存在则返回0
            例子:hsetnx user:002 name leyangjun
    1:hmset:设置多个哈希表的字段值
            同时设置hash的多个field
            例子:hmset user003 name leyangjun age 23 sex 1   -->对哈希表003设置值成功
            hget获取: hget user:003 name    -->获取哈希表003 name的值
    2:hget
            获取指定的hash field值
            例子:hget user003 name      -->表明  字段
    3: hmget
            获取全部指定的hash field
            例子:hmget user:003 name age sex
    4:hincrby (对某个值就行自)
            指定的hash field加上给定值
            例子:hincrby user:003 age 5  -->给原来age的值 加 5  20+5
    5: hexists
            测试指定的field是否存在
            例子: hexists user:003 sex   -->判断hash表字段是否存在
    6:hlen
            返回指定hash表中所有的field数
            例子:hlen user003
    7:hdel
            删除指定hash表中field的值
            例子:hdel user003 age     -->删除user003 表中age的字段
    8:hkeys
            返回hash表中所有的字段
            例子:hkeys user003
    9:hvals
            返回hash表的所有value
            例子:hvals user003   -->所有表中key对应的值
    10:* hgetall  常用
            获取某个hash中全部的field及value
            例子:hgetall user003
    ============END==============
     */
?>

推荐:Redis数据类型之string类型

Web程序猿博客:http://blog.csdn.net/thinkercode string类型-特点 string 是最简单的类型,你可以理解成与 Memcached 是一模一样的类型,一个 key对应一个valu

<php     /*乐杨俊      *redis客户端中的使用:             redis:没有设置有效期时默认永久有效                ==========string类型的方法==========      介绍:string是redis的最简单类

相关阅读排行


相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。