1. Redis对于key的操作命令
  2. del key1 key2 ... Keyn
  3. 作用: 删除1个或多个键
  4. 返回值: 不存在的key忽略掉,返回真正删除的key的数量
  5. rename key newkey
  6. 作用: key赋一个新的key
  7. 注:如果newkey已存在,则newkey的原值被覆盖
  8. renamenx key newkey
  9. 作用: key改名为newkey
  10. 返回: 发生修改返回1,未发生修改返回0
  11. 注: nx--> not exists, 即, newkey不存在时,作改名动作
  1. move key db
  2. redis 127.0.0.1:6379[]> select 2
  3. OK
  4. redis 127.0.0.1:6379[]> keys *
  5. (empty list or set)
  6. redis 127.0.0.1:6379[]> select 0
  7. OK
  8. redis 127.0.0.1:6379> keys *
  9. 1) "name"
  10. 2) "cc"
  11. 3) "a"
  12. 4) "b"
  13. redis 127.0.0.1:6379> move cc 2
  14. (integer) 1
  15. redis 127.0.0.1:6379> select 2
  16. OK
  17. redis 127.0.0.1:6379[]> keys *
  18. 1) "cc"
  19. redis 127.0.0.1:6379[]> get cc
  20. "3"
  21. (注意: 一个redis进程,打开了不止一个数据库, 默认打开16个数据库,从015编号,
  22. 如果想打开更多数据库,可以从配置文件修改)
  1. keys pattern 查询相应的key
  2. redis里,允许模糊查询key
  3. 3个通配符 *, ? ,[]
  4. *: 通配任意多个字符
  5. ?: 通配单个字符
  6. []: 通配括号内的某1个字符
  7. redis 127.0.0.1:6379> flushdb
  8. OK
  9. redis 127.0.0.1:6379> keys *
  10. (empty list or set)
  11. redis 127.0.0.1:6379> mset one 1 two 2 three 3 four 4
  12. OK
  13. redis 127.0.0.1:6379> keys o*
  14. 1) "one"
  15. redis 127.0.0.1:6379> key *o
  16. (error) ERR unknown command 'key'
  17. redis 127.0.0.1:6379> keys *o
  18. 1) "two"
  19. redis 127.0.0.1:6379> keys ???
  20. 1) "one"
  21. 2) "two"
  22. redis 127.0.0.1:6379> keys on?
  23. 1) "one"
  24. redis 127.0.0.1:6379> set ons yes
  25. OK
  26. redis 127.0.0.1:6379> keys on[eaw]
  27. 1)"one"
  1. randomkey 返回随机key
  2. exists key
  3. 判断key是否存在,返回1/0
  4. type key
  5. 返回key存储的值的类型
  6. string,link,set,order set, hash
  7. ttl key
  8. 作用: 查询key的生命周期
  9. 返回: 秒数
  10. 注:对于不存在的key或已过期的key/不过期的key,都返回-1
  11. Redis2.8中,对于不存在的key,返回-2
  12. expire key 整型值
  13. 作用: 设置key的生命周期,以秒为单位
  14. 同理:
  15. pexpire key 毫秒数, 设置生命周期
  16. pttl key, 以毫秒返回生命周期
  17. persist key
  18. 作用: 把指定key置为永久有效
  1. Redis字符串类型的操
  2. set key value [ex 秒数] / [px 毫秒数] [nx] /[xx]
  3. 如: set a 1 ex 10 , 10秒有效
  4. Set a 1 px 9000 , 9秒有效
  5. 注: 如果ex,px同时写,以后面的有效期为准
  6. set a 1 ex 100 px 9000, 实际有效期是9000毫秒
  7. nx: 表示key不存在时,执行操作
  8. xx: 表示key存在时,执行操作
  9. mset multi set , 一次性设置多个键值
  10. 例: mset key1 v1 key2 v2 ....
  11. get key
  12. 作用:获取key的值
  13. mget key1 key2 ..keyn
  14. 作用:获取多个key的值
  15. setrange key offset value
  16. 作用:把字符串的offset偏移字节,改成value
  17. redis 127.0.0.1:6379> set greet hello
  18. OK
  19. redis 127.0.0.1:6379> setrange greet 2 x //从2开始替换
  20. (integer) 5
  21. redis 127.0.0.1:6379> get greet
  22. "hexlo"
  23. 注意: 如果偏移量>字符长度, 该字符自动补0x00
  24. redis 127.0.0.1:6379> setrange greet 6 !
  25. (integer) 7
  26. redis 127.0.0.1:6379> get greet
  27. "heyyo\x00!"
  28. append key value
  29. 作用: value追加到key的原值上
  30. getrange key start stop
  31. 作用: 是获取字符串中 [start, stop]范围的值
  32. 注意: 对于字符串的下标,左数从0开始,右数从-1开始
  33. redis 127.0.0.1:6379> set title 'chinese'
  34. OK
  35. redis 127.0.0.1:6379> getrange title 0 3
  36. "chin"
  37. redis 127.0.0.1:6379> getrange title 1 -2
  38. "hines"
  39.  
  40. 注意:
  41. 1: start>=length, 则返回空字符串
  42. 2: stop>=length,则截取至字符结尾
  43. 3: 如果start 所处位置在stop右边, 返回空字符串
  44. getset key newvalue
  45. 作用: 获取并返回旧值,设置新值,更新状态并且获取之前的状态。
  46. redis 127.0.0.1:6379> set cnt 0
  47. OK
  48. redis 127.0.0.1:6379> getset cnt 1
  49. "0"
  50. redis 127.0.0.1:6379> getset cnt 2 //设置2并且获得之前的1
  51. "1"
  52. incr key //每次加1
  53. 作用: 指定的key的值加1,并返回加1后的值
  54. 注意:
  55. 1:不存在的key当成0,再incr操作
  56. 2: 范围为64有符号
  57. incrby key number
  58. redis 127.0.0.1:6379> incrby age 90 //每次加90
  59. (integer) 92
  60. incrbyfloat key floatnumber
  61. redis 127.0.0.1:6379> incrbyfloat age 3.5 //当成浮点数相加
  62. "95.5"
  63. decr key //每次减一
  64. redis 127.0.0.1:6379> set age 20
  65. OK
  66. redis 127.0.0.1:6379> decr age
  67. (integer) 19
  68. 比如抢手机系统,先用redis内存数据库去减手机的数量,这样很快,然后用mysql慢慢去操作购买订单。
  69. decrby key number
  70. redis 127.0.0.1:6379> decrby age 3 //每次减3
  71. (integer) 16
  72. getbit key offset //在位的角度操作
  73. 作用:获取值的二进制表示,对应位上的值(从左,从0编号)
  74. redis 127.0.0.1:6379> set char A //A的ascii码值是65(0100 0001),a是97(0110 0001)
  75. OK
  76. redis 127.0.0.1:6379> getbit char 1
  77. (integer) 1
  78. redis 127.0.0.1:6379> getbit char 2
  79. (integer) 0
  80. redis 127.0.0.1:6379> getbit char 7
  81. (integer) 1
  82. redis 127.0.0.1:6379>setbit char 2 1 //就可以把A变成a,
  83. redis 127.0.0.1:6379>flushdb //刷新内存
  84. setbit key offset value
  85. 设置offset对应二进制位上的值
  86. 返回: 该位上的旧值
  87. 注意:
  88. 1:如果offset过大,则会在中间填充0,
  89. 2: offset最大大到多少,最大offsetn,那么最大(n+1)位,
  90. 3:offset最大2^32-1,可推出最大的的字符串为512M
  91. bitop operation destkey key1 [key2 ...]
  92. key1,key2..keyNoperation,并将结果保存到 destkey 上。
  93. operation 可以是 AND OR NOT XOR
  94.  
  95. redis 127.0.0.1:6379> setbit lower 7 0
  96. (integer) 0
  97. redis 127.0.0.1:6379> setbit lower 2 1
  98. (integer) 0
  99. redis 127.0.0.1:6379> get lower
  100. " "
  101. redis 127.0.0.1:6379> set char Q
  102. OK
  103. redis 127.0.0.1:6379> get char
  104. "Q"
  105. redis 127.0.0.1:6379> bitop or char char lower
  106. (integer) 1
  107. redis 127.0.0.1:6379> get char
  108. "q"
  109.  
  110. 注意: 对于NOT操作, key不能多个

redis02---对于key的操作命令的更多相关文章

  1. Redis对于key的操作命令

     del key1 key2 ... Keyn 作用: 删除1个或多个键 返回值: 不存在的key忽略掉,返回真正删除的key的数量 rename key newkey 作用: 给key赋一个新的ke ...

  2. Redis 学习(一) —— 安装、通用key操作命令

    一.Redis介绍 1.介绍 通常,在系统中,我们会把数据交由数据库来存储,但传统的数据库增删查改的性能较差,且比较复杂.根据 80/20 法则,百分之八十的业务访问集中在百分之二十的数据上.是否可以 ...

  3. Redis数据库之KEY的操作与事务管理

    目的 了解并掌握各种数据类型的命令操作方式,以及各种数据类型值的操作方式.同时,主要培养对KEY的操作命令运用的能力.重点掌握对KEY信息的管理.事务常规管理和事务回滚操作. KEYS命令的练习,对K ...

  4. Redis入门(三)-Redis的安装及操作key的命令介绍

    前两节对Redis做了一些详细的介绍,那么接下来开始我们就正式进入Redis的学习阶段. 安装Redis Windows下安装redis非常方便, 下载压缩包解压即可使用. 链接:https://pa ...

  5. Redis 02: redis基础知识 + 5种数据结构 + 基础操作命令

    Redis基础知识 1).测试redis服务的性能: redis-benchmark 2).查看redis服务是否正常运行: ping 如果正常---pong 3).查看redis服务器的统计信息: ...

  6. Redis PHP通用类

    找到一个比较全的Redis PHP操作类库,分享给大家 <?php /**  * redis操作类  * 说明,任何为false的串,存在redis中都是空串.  * 只有在key不存在时,才会 ...

  7. Redis的使用完整版

    [Redis基本] 1.redis安装完成后的几个文件: redis-benchmark  性能测试工具(批量写入)./bin/redis-benchmark -n 10000  即可一次性写入100 ...

  8. php redis数据库操作类

    <?php namespace iphp\db; use iphp\App; /** * redis操作类 * 说明,任何为false的串,存在redis中都是空串. * 只有在key不存在时, ...

  9. php-redis 操作类 封装

    <?php /** * redis操作类 * 说明,任何为false的串,存在redis中都是空串. * 只有在key不存在时,才会返回false. * 这点可用于防止缓存穿透 * */ cla ...

随机推荐

  1. POJ 1067: Wythoff Game【博弈】

    经典的威佐夫博奕把黄金分割常数乘以k(k=m-n)即为奇异点,此时奇异点是用小数据观察出来的,具体的数学证明,观察到黄金分割常数是无理数,再加上高斯函数[kφ]的形势将自然数分割成两个等价类很容易想到 ...

  2. 算法复习——2—sat(bzoj2199)

    题目: Description 由于对Farmer John的领导感到极其不悦,奶牛们退出了农场,组建了奶牛议会.议会以“每头牛 都可以获得自己想要的”为原则,建立了下面的投票系统: M只到场的奶牛 ...

  3. 算法复习——欧拉回路混合图(bzoj2095二分+网络流)

    题目: Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个小岛之间不会有两座桥,并且从一个小岛可以到另外任意一个小岛.现在YYD想骑单车 ...

  4. P2014 选课 (树形动规)

    题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习.现在有N门功课,每门课有个学分,每门课有一 ...

  5. websql使用实例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. VMware 如何通过现有虚拟机克隆新的虚拟机 (图文)

    本文做的是克隆主机,并重命名主机名,做好主机名与IP的对应关系,并可以通过主机名访问对方的主机. 首先说一下克隆虚拟机的作用 克隆虚拟机的作用 因工作需要,需要用到多个虚拟机环境时,再新建几个比较麻烦 ...

  7. Compose

    安装与卸载 Compose 支持 Linux.macOS.Windows 10 三大平台. Compose 可以通过 Python 的包管理工具 pip 进行安装,也可以直接下载编译好的二进制文件使用 ...

  8. POJ 3080 多个串最长公共子序列

    求多个串最长公共子序列,字典序最小输出.枚举剪枝+kmp.比较简单,我用find直接查找16ms #include<iostream> #include<string> #in ...

  9. (入门SpringBoot)SpringBoot项目数据源以及整合mybatis(二)

    1.配置tomcat数据源: #   数据源基本配置spring.datasource.url=jdbc:mysql://localhost:3306/shoptest?useUnicode=true ...

  10. spring boot 文件上传大小配置

    在启动类中,添加bean import javax.servlet.MultipartConfigElement; import org.springframework.boot.SpringAppl ...