Redis入门,看这一篇就够了( 三 )
127.0.0.1:6379> zrangebyscore footCounts 3000 30000 withscores limit 0 11) "tid"2) "16011"
增加指定元素分数语法:zincrby key increment member
127.0.0.1:6379> zincrby footCounts 2000 tid"18011"
获取集合元素个数语法:zcard key
127.0.0.1:6379> zcard footCounts(integer) 3
获取指定范围分数个数语法:zcount key min max
127.0.0.1:6379> zcount footCounts 2000 20000(integer) 2
删除指定元素语法:zrem key member [member …]
127.0.0.1:6379> zrem footCounts huny(integer) 1
获取元素排名语法:zrank key member
127.0.0.1:6379> zrank footCounts tid(integer) 1
列表操作命令列表类型是一个有序的字段串列表 , 内部是使用双向链表实现 , 所有可以向两端操作元素 , 获取两端的数据速度快 , 通过索引到具体的行数比较慢 。
列表类型的元素是有序且可以重复的 。
存储值左端存值语法:lpush key value [value …]
127.0.0.1:6379> lpush list lily sandy(integer) 2
右端存值语法:rpush key value [value …]
127.0.0.1:6379> rpush list tom kitty(integer) 4
索引存值语法:lset key index value
127.0.0.1:6379> lset list 3 utoOK
弹出元素左端弹出语法:lpop key
127.0.0.1:6379> lpop list"sandy"
右端弹出语法:rpop key
127.0.0.1:6379> rpop list"kitty"
获取元素个数语法:llen key
127.0.0.1:6379> llen list(integer) 2
获取列表元素两边获取语法:lrange key start stop
127.0.0.1:6379> lpush users tom kitty land pony jack maddy(integer) 6127.0.0.1:6379> lrange users 0 31) "maddy"2) "jack"3) "pony"4) "land"// 获取所有127.0.0.1:6379> lrange users 0 -11) "maddy"2) "jack"3) "pony"4) "land"5) "kitty"6) "tom"// 从右端索引127.0.0.1:6379> lrange users -3 -11) "land"2) "kitty"3) "tom"
索引获取语法:lindex key index
127.0.0.1:6379> lindex list 2"ketty"// 从右端获取127.0.0.1:6379> lindex list -5"sady"
删除元素根据值删除语法:lrem key count value
127.0.0.1:6379> lpush userids 111 222 111 222 222 333 222 222(integer) 8// count=0 删除所有127.0.0.1:6379> lrem userids 0 111(integer) 2// count > 0 从左端删除前count个127.0.0.1:6379> lrem userids 3 222(integer) 3// count < 0 从右端删除前count个127.0.0.1:6379> lrem userids -3 222(integer) 2
范围删除语法:ltrim key start stop
// 只保留2-4之间的元素127.0.0.1:6379> ltrim list 2 4OK
散列操作命令redis字符串类型键和值是字典结构形式 , 这里的散列类型其值也可以是字典结构 。
存放键值单个语法:hset key field value
127.0.0.1:6379> hset user name javastack(integer) 1
多个语法:hmset key field value [field value …]
127.0.0.1:6379> hmset user name javastack age 20 address chinaOK
不存在时语法:hsetnx key field value
127.0.0.1:6379> hsetnx user tall 180(integer) 0
获取字段值单个语法:hget key field
127.0.0.1:6379> hget user age"20"
多个语法:hmget key field [field …]
127.0.0.1:6379> hmget user name age address1) "javastack"2) "20"3) "china"
获取所有键与值语法:hgetall key
127.0.0.1:6379> hgetall user1) "name"2) "javastack"3) "age"4) "20"5) "address"6) "china"
获取所有字段语法:hkeys key
127.0.0.1:6379> hkeys user1) "name"2) "address"3) "tall"4) "age"
获取所有值语法:hvals key
127.0.0.1:6379> hvals user1) "javastack"2) "china"3) "170"4) "20"
判断字段是否存在语法:hexists key field
127.0.0.1:6379> hexists user address(integer) 1
获取字段数量语法:hlen key
127.0.0.1:6379> hlen user(integer) 4
递增/减语法:hincrby key field increment
127.0.0.1:6379> hincrby user tall -10(integer) 170
删除字段语法:hdel key field [field …]
127.0.0.1:6379> hdel user age(integer) 1
Redis 安装Redis 支持在 Linux、OS X 、BSD 等 POSIX 系统中安装 , 也支持在 Windows 中安装 , 在 Windows 、Linux 下的安装请参考
详细过程见:Redis 安装 - 侠客行
事务redis 事务一次可以执行多条命令 , 服务器在执行命令期间 , 不会去执行其他客户端的命令请求 。
事务中的多条命令被一次性发送给服务器 , 而不是一条一条地发送 , 这种方式被称为流水线 , 它可以减少客户端与服务器之间的网络通信次数从而提升性能 。
Redis 最简单的事务实现方式是使用 MULTI 和 EXEC 命令将事务操作包围起来 。
- 批量操作在发送 EXEC 命令前被放入队列缓存 。
- 收到 EXEC 命令后进入事务执行 , 事务中任意命令执行失败 , 其余命令依然被执行 。 也就是说 Redis 事务不保证原子性 。
- 抖音|抖音有多难做,看看这个表,这些领域你踩坑了吗?
- 小屏|手小怎么办?来看看这几款小屏旗舰,小屏≠减配
- AMD|AMD终于要推新入门级处理器了,看到具体信息,真为其捏一把汗
- 淘宝|微信大更新!最烦人的限制没了,还能直接看这种视频
- 数据库|Jedis操作Redis数据库(八)
- 军情六处|新手入门学PLC,搞懂这几种接线方式,再也不用求别人
- 方法论|最实用的中台入门介绍(三)模型篇
- 小米科技|小米12全曝光,看这篇就够了!
- 红米手机|12+256GB、骁龙870手机降至1999,极致性价比还得看这款“神机”
- 团购|今年值得买的手机,就看这5部,有的能省去买微单的钱