Redis 对String数据类型的操作
Redis的 Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字。使用Strings类型,你可以完全实现目前 Memcached 的功能,并且效率更高。还可以享受Redis的定时持久化,操作日志及 Replication等功能。除了提供与 Memcached 一样的get、set、incr、decr 等操作外,Redis还提供了下面一些操作:
- 获取字符串长度
- 往字符串append内容
- 设置和获取字符串的某一段内容
- 设置及获取字符串的某一位(bit)
- 批量设置一系列字符串的内容
Redis能存储二进制安全的字符串,最大长度为1GB
127.0.0.1:6379> set name "郭红俊"    
OK     
127.0.0.1:6379> get name     
"\xe9\x83\xad\xe7\xba\xa2\xe4\xbf\x8a"     
127.0.0.1:6379> set name "ghj1976"     
OK     
127.0.0.1:6379> get name     
"ghj1976"
String类型还支持批量的读写操作
[root@localhost src]# ./redis-cli    
127.0.0.1:6379> mset age 31 sex "male"     
OK     
127.0.0.1:6379> mget age     
1) "31"     
127.0.0.1:6379> mget age sex     
1) "31"     
2) "male"     
127.0.0.1:6379> get age     
"31"     
127.0.0.1:6379> del age     
(integer) 1     
127.0.0.1:6379> mget age sex     
1) (nil)     
2) "male"     
127.0.0.1:6379>
String类型其实也可以用来存储数字,并支持对数字的加减操作。
127.0.0.1:6379>    
127.0.0.1:6379> incr age     
(integer) 1     
127.0.0.1:6379>     
127.0.0.1:6379> get age     
"1"     
127.0.0.1:6379> incrby age  5     
(integer) 6     
127.0.0.1:6379> get age     
"6"     
127.0.0.1:6379> decr age     
(integer) 5     
127.0.0.1:6379> get age     
"5"     
127.0.0.1:6379> decrby age 3     
(integer) 2     
127.0.0.1:6379> get age     
"2"     
127.0.0.1:6379> del age     
(integer) 1     
127.0.0.1:6379> get age     
(nil)
说明:
incr 命令给某个变量加一,如果这个变量不存在,则首先建立,使用默认值0,然后加一后是1, 如上面代码。如果这个变量存在,则直接加一。
127.0.0.1:6379> set aa 45    
OK     
127.0.0.1:6379> get aa     
"45"     
127.0.0.1:6379> incr aa     
(integer) 46     
127.0.0.1:6379> get aa     
"46"     
127.0.0.1:6379> set bb ghh     
OK     
127.0.0.1:6379> get  bb     
"ghh"     
127.0.0.1:6379> incr bb     
(error) ERR value is not an integer or out of range     
127.0.0.1:6379>
String类型还支持对其部分的修改和获取操作
127.0.0.1:6379> set name 郭红俊    
OK     
127.0.0.1:6379> get name     
"\xe9\x83\xad\xe7\xba\xa2\xe4\xbf\x8a"     
127.0.0.1:6379> append name "ddd."     
(integer) 13     
127.0.0.1:6379> get name     
"\xe9\x83\xad\xe7\xba\xa2\xe4\xbf\x8addd."     
127.0.0.1:6379> strlen name     
(integer) 13     
127.0.0.1:6379> substr name 0 3     
"\xe9\x83\xad\xe7"     
127.0.0.1:6379> substr name 0 2     
"\xe9\x83\xad"
更多字符串使用命令参考:
http://www.redisdoc.com/en/latest/string/index.html
redis 全部命令请看:
http://www.redisdoc.com/en/latest/index.html
简单统计命令如下:
127.0.0.1:6379> dbsize   
(integer) 2    
127.0.0.1:6379>    
127.0.0.1:6379> keys *    
1) "sex"    
2) "name"    
127.0.0.1:6379>
dbsize 返回目前存储的数量。
keys 返回满足查询表达式的所有key keys * 是全部
Redis 对String数据类型的操作的更多相关文章
- Redis 学习(二) —— 数据类型及操作
		Redis支持string.list.set.zset.hash等数据类型,这一篇学习redis的数据类型.命令及某些使用场景. 一.String,字符串 字符串是 Redis 最基本的数据类型.一个 ... 
- Redis学习-string数据类型
		Redis 是一个开源的使用 ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志 型.Key-Value 数据库. redis提供五种数据类型string,hash,list,set及sor ... 
- redis 哈希数据类型简单操作(实现购物车案例)
		这里不累赘如何安装redis和php redis扩展,主要熟悉调用redis哈希数据类型 简单方法操作如下 1:hSet 2:hGet 4:hDel 5:hGetAll 4:hExists 5:hI ... 
- 一:redis 的string类型 - 相关操作
		*redisclient使用: =============一类:string的方法================ 介绍:string是redis的最简单类型,一个key相应一个value,strin ... 
- redis之string数据类型常用方法总结
		目录 redis 字符串(string)[需要掌握] 特点 语法 redis 字符串(string)[需要掌握] 特点 一个键能存储512MB数据 string类型是二进制安全的,可以存储任何数据,比 ... 
- Redis学习笔记——数据类型及操作
		数据操作 redis是key-value的数据,所以每个数据都是一个键值对 键的类型是字符串 值的类型分为五种: 字符串string 哈希hash 列表list 集合set 有序集合zset 数据操作 ... 
- redis学习--String数据类型。
		本文摘自:http://www.cnblogs.com/stephen-liu74/archive/2012/03/14/2349815.html 一.概述: 字符串类型是Redis中最为基础的数据存 ... 
- [redis] redis 对string类型数据操作
		package com.xwolf.java.redis; import org.junit.Before; import org.junit.Test; import redis.clients.j ... 
- 二、Redis基本操作——String(实战篇)
		小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大.万一有写错的地方,岂不是会误导很多筒子们.所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠 ... 
随机推荐
- Jackson学习笔记-对象序列化
			一.用ObjectMapper.readValue(jsonString, Student.class) , ObjectMapper.writeValueAsString(student) impo ... 
- CentOS单用户模式下修改ROOT密码和grub加密
			Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 Linux 系统启动到多用户模式,并提供正常的网络服务.如果系统管理员需要进行系统维护或系统出现启动异常时 ... 
- PO/POJO/VO/BO/DAO/DTO
			PO(persistant object) 持久对象在o/r 映射的时候出现的概念,如果没有o/r映射,就没有这个概念存在了.通常对应数据模型(数据库),本身还有部分业务逻辑的处理.可以看成是与数据库 ... 
- Oracle ->> 查看分区表的每个分区的数据行分布情况
			ora_hash函数用来返回分区号,而dbms_rowid.rowid_object()函数用来返回object_id , ) part_id ,count(*) from sales_fact_pa ... 
- webapp 开发之iScroll 学习
			demo.html <!doctype html> <html lang="en"> <head> <meta charset=" ... 
- HttpClient Post Form提交文件/二进制数据
			HttpClient httpClient = HttpClients.createDefault(); HttpPost httppost = new HttpPost(url); Multipar ... 
- eclipse启动报错 java was started but returned exit code = -805306369
			前几天还工作的好好的eclipse昨天下午启动时突然报错 报错如图: 妹的,好端端突然报错,非常奇怪,关键还是返回一堆看不懂的东西,细看都是eclipse.ini里面的配置信息,看到熟悉的jdk,误以 ... 
- OpenMp并行提升时间为什么不是线性的?
			最近在研究OpenMp,写了一段代码,如下: #include<time.h> #include<stdio.h> #include<stdlib.h> #incl ... 
- 设备模型之kobject,kset及其关系
			Linux2.6以后的设备驱动,都是在设备模型的基础上构建的,因此,要编写linux下的设备驱动程序,不论是usb设备,pci设备等,都需要了解设备模型. 设备模型的基础结构体主要是kobject,k ... 
- 自定义View(7)官方教程:自定义View(含onMeasure),自定义一个Layout(混合组件),重写一个现有组件
			Custom Components In this document The Basic Approach Fully Customized Components Compound Controls ... 
