我爱编程

Mac环境下Redis的安装和基本命令的使用

2018-07-25  本文已影响502人  TitanCoder
Redis

Redis简介

Redis的优势

Redis与其他key-value存储有什么不同?

Redis的安装

Redis命令操作

String

设置值

# a、设置键值
    set key value
    set titan titan
# b、设置键值及过期时间,以秒为单位
    setex key seconds value
    setex c 10 good
# c、设置多个键值
    mset key value [key value ……]
    mset d good e nice f bad

获取值

# a、根据键获取值,如果键不存在则返回None(null 0 nil)
    get key
    get d
# b、根据多个键获取多个值
    mget key [key ……]
    mget d f a

运算命令

前提条件是:值是字符串类型的数字

# a、将key对应的值加1
    incr key
    incr g
# b、将key对应的值减1
    decr key
    decr h
# c、将key对应的值加整数
    incrby key intnum
    incrby g 12
# d、将key对应的值加整数
    decrby key intnum
    decrby g 11

其他常用命令

# a、追加值
    append key value
    append d lucky
# b、获取值长度
    strlen key
    strlen d

Keys

# 1、查找键,参数支持正则
    keys pattern
# 2、判断键是否存在,如果存在返回1,不存在返回0
    exists key
# 3、查看键对应的value类型
    type key
# 4、删除键及对应的值
    del key [key ……]
# 5、设置过期时间,以秒为单位
    expire key seconds
# 6、查看有效时间,以秒为单位
    ttl key

Hashes

# 1、设置
    # a、设置单个值
        hset key field value
        hset a1 field a1
    # b、设置多个值
        hmset key field value [field value ……]
        hmset a3 field1 a3 field2 a4
# 2、获取
    # a、获取一个属性的值
        hget key field
        hget a3 field1
    # b、获取多个属性的值
        hmget key filed [filed ……]
        hmget a3 field1 field2
    # c、获取所有属性和值
        hgetall key
        hgetall a3
    # d、获取所有属性
        hkeys key
        hkeys a3
    # e、获取所有值
        hvals key
        hvals a3
    # f、返回包含数据的个数
        hlen key
        hlen a3
# 3、其它
    # a、判断属性是否存在,存在返回1,不存在返回0
        hexists key field
        hexists a3 field3
        hexists a3 field1
    # b、删除属性及值, 成功返回1, 失败返回0
        hdel key field [field ……]
        hdel a2 field
    # c、返回值的字符串长度
        hstrlen key field
        hstrlen a3 field1

列表(List)

    # 1、设置
        # a、在头部插入
            lpush key value [vlaue ……]
            lpush list 1 2 3 4
        # b、在尾部插入
            rpush key value [vlaue ……]
            rpush list 9 8 7 6
        # c、在一个元素的前|后插入新元素
            linsert key before|after pivot value
            linsert list before 4 10
            linsert list after 3 5
        # d、设置指定索引的元素值
            lset key index value
            lset list 3 11
            lset list -2 21
            # 注意:index从0开始
            # 注意:索引值可以是负数,表示偏移量是从list的尾部开始,如-1表示最后一个元素
    # 2、获取
        # a、移除并返回key对应的list的第一个元素
            lpop key
            lpop list
        # b、移除并返回key对应的list的最后一个元素
            rpop key
            lpop list 
        # c、返回存储在key的列表中的指定范围的元素
            lrange key start end
            lrange list 2 4
            # 注意:start end都是从0开始
            # 注意:偏移量可以是负数
    # 3、其它
        # a、裁剪列表,改为原集合的一个子集
            ltrim key start end
            ltrim list 0 2
            # 注意:start end都是从0开始
            # 注意:偏移量可以是负数
        # b、返回存储在key里的list的长度
            llen key
            llen list
        # c、返回列表中索引对应的值
            lindex key index
            lindex list 2

集合(Set)

    # 1、设置
        # a、添加元素
            sadd key member [member ……]
            sadd set1 1 2 3 4 5 3 2
            sadd set2 4 5 6 7 8
    # 2、获取
        # a、返回key集合中所有元素
            smembers key
            smembers set1
        # b、返回集合元素个数
            scard key
            scard set1
    # 3、
        # a、求多个集合的交集
            sinter key [key ……]
            sinter set1 set2
        # b、求多个集合的差集
            sdiff key [key ……]
            sdiff set1 set2
            # 输出: 1 2 3 
            sdiff set2 set1
            # 输出: 6 7 8
            # 注意: 两个结合前后位置变化输出的结果是不一样的
        # c、求多个集合的合集
            sunion key [key ……]
            sunion set1 set2
        # d、判断元素是否在集合中,存在返回1,不存在返回0
            sismember key member
            sismember set1 4
            sismember set1 7

有序集合(sorted set)

    # 1、设置
        # a、添加
            zadd key score member [score member ……]
            zadd slist 1 a 5 b 3 c 2 d 4 e
    # 2、获取
        # a、返回指定范围的元素
            zrange key start end
            zrange slist 0 2
        # b、返回元素个数
            zcard key
            zcard slist
        # c、返回有序集合key中,score在min和max之间的元素的个数
            zcount key min max
            zcount slist 1 3
        # d、返回有序集合key中,成员member的score值
            zscore key member
            zscore slist e

上一篇下一篇

猜你喜欢

热点阅读