• redis学习(上)


    1、redis快速入门案例

    set和get设置的都是字符串类型(string),注意:get和set的类型都是字符串类型

    (1)设置一个字符串键名和键值:set key value

    (2)得到键名的值:get key

    127.0.0.1:6379> set name "xiaoming"
    OK
    127.0.0.1:6379> get name
    "xiaoming"

    2、redis的keys类型

    2.1 语法: KEYS pattern

    keys  *:  返回所有的键名

    ?:匹配一个字符

    *:匹配任意个(包括0个)字符

    []:匹配括号间多大任一个字符,可以使用“-”表示范围,如[a-z]

    具体实例:

     2.2 randomkey

    随机的返回一个key, 注意:返回的是 key 而不是 值!

    具体实例1:随机返回一个键名

     2.3 exists key

    语法:EXISTS key

    检查给定 key 是否存在。如果存在,那么返回1,如果不存在,那么返回0

    具体实例:

     2.4expire

    语法:EXPIRE key seconds

    作用:为给定 key 设置过期时间

    具体实例:

    2.5 pexpire key

    语法: pexpire key milliseconds

    作用:为给定key设置过期时间,不过是以毫秒为单位

    具体实例:

     2.6 ttl key

    语法: ttl key

    作用:返回给定 key 的剩余生存时间(TTL, time to live),以为时间。

    具体实例

     2.7 pttl key

    语法:pttl key

    毫秒为单位返回 key 的剩余的过期时间

    具体实例:

     2.8 type

    语法: type key

    作用: 返回存储时的值的类型

    返回 key 的数据类型有:

    1)       none (key不存在)

    2)       string (字符串)

    3)       list (列表)

    4)       set (集合)

    5)       zset (有序集)

    6)       hash (哈希表)

    具体实例:

     2.9 rename

    语法:RENAME key newkey

    修改重命名key 的名称 => 注意这里修改的是key而不是值

    具体实例:

     2.10 sort 排序

    sort key

    sort limit offset count

    sort key asc

    sort key desc

    返回或保存给定列表、集合、有序集合key中经过排序的元素

     2.11 persist

    语法:PERSIST key

    移除 key 的过期时间,key 将持久保持

    具体实例

     

     2.12 del

    语法:DEL key

    该命令用于在 key 存在时删除 key

    具体实例

     2.13 move

    MOVE key db

    将当前数据库的 key 移动到给定的数据库 db 当中

    3、字符串类型

    通过set设置的都是字符串类型

    3.1 set

    SET key value

    设置指定 key 的值

    具体实例:

     3.2 get

    GET key

    获取指定 key 的值

    具体实例

     3.3 setnx

    SETNX key value

    Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在时,为 key 设置指定的值。 如果设置不存在的,返回1表示成功,0表示失败

    具体实例:

     3.4 mset

    M:multiple

    MSET key value [key value ...]

    同时设置一个或多个 key-value 对

    具体实例:

     3.5 mget

    MGET key1 [key2..]

    获取所有(一个或多个)给定 key 的值

    具体实例:

     3.6 msetnx

    MSETNX key value [key value ...]

    同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在,注意:要都不存在才可以设置成功

     3.7 setrange

    从索引位置替换或者是覆盖

    SETRANGE key offset value

    用 value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始, 从0开始计数的

    具体实例

     3.8 getrange(截取字符串)

    GETRANGE key start end

    返回 key 中字符串值的子字符 最后一个数字是结束位置

    具体实例

     3.9 getset

    GETSET key value

    将给定 key 的值设为 value ,并返回 key 的旧值(old value), 相当于不改变key,把key所对应的值进行替换掉新值,并且返回旧值

     3.10 setex

    语法:SETEX key seconds value

    设置指定 key 的值,同时设置过期时间,单位

    具体实例:

     3.11 psetex

    PSETEX key milliseconds value

    设置指定 key 的值,同时设置过期时间,单位毫秒

     3.12 append

    APPEND key value

    如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾

    具体实例

     3.13 incr

    INCR key

    将 key 中储存的数字值增一,并且返回的是递增后的值

    具体实例:

     3.14 incrby

    INCRBY key increment

    将 key 所储存的值加上给定的增量值(increment),返回的是递增后的值

    具体实例:

     3.15 decr

    DECR key

    将 key 中储存的数字值减一, 返回的是递减后的值

    具体实例:

     3.16 decrby

    DECRBY key decrement

    key 所储存的值减去给定的减量值(decrement),返回的是递减后的值

    具体实例:

     3.17 strlen

    STRLEN key

    返回 key 所储存的字符串值的长度

    具体实例:

     3.18 incrbyfloat

    INCRBYFLOAT key increment

    将 key 所储存的值加上给定的浮点增量值(increment),如果是减少小数的的话,用incrbyfloat key -num来操作

    具体实例

     

     4、list列表类型

     4.1 lpush

    从左侧添加数据)(先添加的会往数据中间挤,后添加的放在最左边)

    LPUSH key value [value ...]

    将值value插入到列表key的表头

    具体实例:

     同时也可以push多个值进入数组

     4.2 rpush(从右侧开始添加数据)

    RPUSH key value [value ...]

    将值value插入到列表key的表尾

    具体实例:

     4.3 lpushx

    LPUSHX key value

    将值value插入到列表key的表头,当且仅当key存在并且是一个列表, 同时不能添加多个值只能一个一个添加

    具体实例

     4.4 rpushx

    RPUSHX key value

    将值value插入到列表key的表尾,当且仅当key存在并且是一个列表

    具体实例

     4.5 lpop

    LPOP key

    移除并返回列表key的头元素

    具体实例

     4.6 rpop

    RPOP key

    移除并返回列表key的尾元素

    具体实例:

     4.7 blpop

    BLPOP key [key ...] timeout

    LPOP命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被BLPOP命令阻塞,直到等待超时或发现可弹出元素为止

     4.8 brpop

    BRPOP key [key ...] timeout

    RPOP命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被BRPOP命令阻塞,直到等待超时或发现可弹出元素为止

     4.9 llen

    LLEN key

    返回列表key的长度

     

     4.10 lrange(查看数据)

    LRANGE key start stop

    返回列表key中指定区间内的元素,区间以偏移量startstop指定

    具体实例1

     具体实例2

     4.11 lset(修改数据)

    LSET KEY index value

    将列表key下标为index的元素的值至为value

    具体实例:

     4.12 lindex

    LINDEX key index

    返回列表key中,下标为index的元素

     4.13 ltrim

    LTRIM key start stop

    对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除

    具体实例:

     4.14 linsert

    LINSERT key BEFORE|AFTER pivot value

    将值value插入到列表key当中,位于值pivot之前或之后

    具体实例:

     上面的例子是表示把grape插入到peach后面

     4.15 lrem

    REM:remove

    LREM key count value

    根据参数count的值,移除列表中与参数value相等的元素

    count > 0: 从表头开始向表尾搜索,移除与value相等的元素,数量为count

    count < 0: 从表尾开始向表头搜索,移除与value相等的元素,数量为count的绝对值

    count = 0: 移除表中所有与value相等的值。根据值移除

    具体实例:

     注意在使用list的时候,如果需要设置list的过期时间,那么可以使用string上在的函数 如expire arr 20 进行设置, 其他功能一样可以使用

  • 相关阅读:
    LeetCode Reverse Nodes in k-Group
    LeetCode Unique Binary Search Trees II
    Binary Tree Zigzag Level Order Traversal
    JavaWeb--JSP
    Java--面向对象
    javaScript-进阶篇(三)
    javaScript-进阶篇(二)
    java--常用类
    javaScript-进阶篇(一)
    Java--数组
  • 原文地址:https://www.cnblogs.com/rickyctbu/p/12717350.html
Copyright © 2020-2023  润新知