Redis命令
2015-08-16 18:07
676 查看
Radis
简单命令
切换数据库> select 0 OK
字符串结构
存储键值对> set name 'hello world'
获取数据
> get name "hello world"
针对特定类型的命令
以下一些操作依赖于特定的value值的类型,虽然redis并不关心你的值是什么,但是它还是提供一些对某种特定类型和结构有用的命令获取指定字符串key的value长度
> strlen name (integer) 11
获取字符串value指定范围的值
> getrange name 0 3 "hell"
添加内容到制定字符串value结尾
append name 'data apended' (integer) 24 > get name "hello worlddata appended"" data-snippet-id="ext.4c749b3c781d56a7e7033b2e3d17d36e" data-snippet-saved="false" data-csrftoken="dqzwTenF-X7fYUPDvgFYkF0bLJmATCh7QS5E" data-codota-status="done">[code]> append name 'data apended' (integer) 24 > get name "hello worlddata appended"
递增整型value
del num (integer) 1 > incr num (integer) 1 > incrby num 6 (integer) 7 > decr num (integer) 6 > decrby num 5 (integer) 1" data-snippet-id="ext.3beb68ba4cc50ba79214d32968537d38" data-snippet-saved="false" data-csrftoken="MKKKz9f1-eQLuQzAifwF8G8CC4ESSwLFeMXA" data-codota-status="done">[code]> del num (integer) 1 > incr num (integer) 1 > incrby num 6 (integer) 7 > decr num (integer) 6 > decrby num 5 (integer) 1
对错误的类型操作会导致异常
incr name (error) ERR value is not an integer or out of range" data-snippet-id="ext.809efcab04d706ba6ab4e78b6c38fdac" data-snippet-saved="false" data-csrftoken="ATUdVpwc-sxPVsN9zcj7CAVAi-T2qoysJF4A" data-codota-status="done">[code]> incr name (error) ERR value is not an integer or out of range
哈希结构
设置和取得指定key指定field的值hset users:goku powerlevel 9000 (integer) 0 > hget users:goku powerlevel "9000"" data-snippet-id="ext.7ccbfb9c613426b6ee4532a47d663ab9" data-snippet-saved="false" data-csrftoken="nDKehyrj-sxJtAStMf5Je8RSEXxWaiDD-cXY" data-codota-status="done">[code]> hset users:goku powerlevel 9000 (integer) 0 > hget users:goku powerlevel "9000"
设置和取得指定key的多个field的值
hmset users:goku race saiyan age 737 OK > hmget users:goku race powerlevel 1) "saiyan" 2) "9000" > hgetall users:goku 1) "powerlevel" 2) "9000" 3) "race" 4) "saiyan" 5) "age" 6) "737" > hkeys users:goku 1) "powerlevel" 2) "race" 3) "age" > hdel users:goku age (integer) 1" data-snippet-id="ext.0c8103381e3addd54e0669af9ef4404d" data-snippet-saved="false" data-csrftoken="VlbNY5X0-x8MjsxXjtmuwOzRgkQMZcXIu9ng" data-codota-status="done">[code]> hmset users:goku race saiyan age 737 OK > hmget users:goku race powerlevel 1) "saiyan" 2) "9000" > hgetall users:goku 1) "powerlevel" 2) "9000" 3) "race" 4) "saiyan" 5) "age" 6) "737" > hkeys users:goku 1) "powerlevel" 2) "race" 3) "age" > hdel users:goku age (integer) 1
哈希结构的意义在于提供对数据操作的更细力度,如果我们仅仅使用字符串结构存储整个值,那么如果有对其中某个地方修改的话,必须更新整个值。而哈希结构让我们可以细粒度的增删改查数据的某个特定的地方
sort key [by pattern] [limit of …]
适用于列表,集合
列表结构
lpush mylist 'one' (integer) 1 > llen mylist (integer) 1 > lindex mylist 0 "one" > linsert mylist before 'one' 'two' (integer) 2 > lindex mylist 0 "two" > linsert mylist after 'one' 'three' (integer) 3 > lindex mylist 2 "three" > lpop mylist "two" > lpush mylist 'four' (integer) 3 > lrange mylist 0 9999 1) "four" 2) "one" 3) "three" > lrem mylist 1 'four' (integer) 1 > lrange mylist 0 9999 1) "one" 2) "three" > lset mylist 0 'gaga' OK > lrange mylist 0 888 1) "gaga" 2) "three" > ltrim mylist 0 0 OK > lrange mylist 0 99 1) "gaga" " data-snippet-id="ext.f41e1864221a1d5bae30e2a73e575c6f" data-snippet-saved="false" data-csrftoken="F8yP2k7s-Y9xsCQwDZZl58mtuYTtRKAeTl7g" data-codota-status="done">[code]> lpush mylist 'one' (integer) 1 > llen mylist (integer) 1 > lindex mylist 0 "one" > linsert mylist before 'one' 'two' (integer) 2 > lindex mylist 0 "two" > linsert mylist after 'one' 'three' (integer) 3 > lindex mylist 2 "three" > lpop mylist "two" > lpush mylist 'four' (integer) 3 > lrange mylist 0 9999 1) "four" 2) "one" 3) "three" > lrem mylist 1 'four' (integer) 1 > lrange mylist 0 9999 1) "one" 2) "three" > lset mylist 0 'gaga' OK > lrange mylist 0 888 1) "gaga" 2) "three" > ltrim mylist 0 0 OK > lrange mylist 0 99 1) "gaga"
集合结构
sadd key member [member ...] 添加集合元素 scard key 包含元素个数 sdiff key [key ..] 取集合不同的元素 sdiffstore destination key [key ...] 取集合不同元素存储到destination sinter key [key ...] 求交集 sinterstore destination key [key ...] 求交集并存储到destination sismember key member 判断该元素是否属于该集合 smembers key 列出集合元素 smove source destination member 从source集合转移member元素到destination集合 spop key [count] 从头移除 count个元素 srandmember key [count] 随机获取一个或者多个元素 srem key member [member ...] 移除元素 sunion key [key ...] 求并集 sunionstore destination key [key ...] 求交集并保存到destination sscan key cursor [match pattern...] 增量迭代集合元素
有序集合结构
带有权重有序的集合写到这有点懒了0 0
大部分和上面的集合操作相同,有一些基于权重的特殊命令可以在下面查找
http://redis.io/commands#list
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- redis安装问题小结
- 数据库链接字符串查询网站
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- Redis偶发连接失败案例实战记录
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置
- Oracle 数据库 临时数据的处理方法
- 数据库分页查询语句数据库查询
- Redis中实现查找某个值的范围