实验环境
操作系统: ubuntu-16.04-x64
redis版本: 4.0.9
概述
String 类型是Redis中最基本的数据类型,它是二进制安全的,能存储任何形式的字符串。甚至可以存储JSON对象或者图片。一个字符串键允许存储的最大容量是512M。
常见命令
学习Redis命令不能仅仅靠死记,我们需要学会查看帮助。Redis的命令帮助使用方法如下:
127.0.0.1:6379> help command
以get命令为例:
127.0.0.1:6379> help get
GET key
summary: Get the value of a key #命令概述
since: 1.0.0 # 1.0.0 版本后有此命令
group: string #属于的命令组
1.赋值
set key value [EX seconds] [PX milliseconds] [NX|XX]
EX:可选,表示key的过期时间,单位为秒
PX:可选,表示key的过期时间,单位为毫秒
NX|XX: 可选,NX表示key不存在时才设置值,反之XX表示不存在才设置。
例:
127.0.0.1:6379>set name tom #设置name 为tom
127.0.0.1:6379>set age 16 EX 10 NX #当redis中不存在名字为age的key则设置age为16,过期时间为10秒。
2.取值
get key
例:
127.0.0.1:6379> get key
"hello"
3.自增
INCR key
例:
127.0.0.1:6379> set num 10
OK
127.0.0.1:6379> INCR num
(integer) 11
# INCR只能作用于整数类型的字符串
127.0.0.1:6379> set name "lisi"
OK
127.0.0.1:6379> INCR name
(error) ERR value is not an integer or out of range
4.增加指定的整数
INCRBY key increment
例:
127.0.0.1:6379> set num 10
OK
127.0.0.1:6379> INCRBY num 20
(integer) 30
# 也只能作用于整数类型的字符串
5.减少指定的整数
DECR key
DECRBY key decrement
# 用法跟INCR一样
6.增加指定浮点数
INCRBYFLOAT key increment
例:
127.0.0.1:6379> SET num 2.5
OK
127.0.0.1:6379> INCRBYFLOAT num 4.0
"6.5"
# 作用于浮点数类型的字符串
7.向尾部追加值
APPEND key value
例:
127.0.0.1:6379> set key1 hello
OK
127.0.0.1:6379> APPEND key1 world
(integer) 10
127.0.0.1:6379> get key1
"helloworld"
8.获取字符串长度
STRLEN key
例:
127.0.0.1:6379> set key1 "hello world"
OK
127.0.0.1:6379> STRLEN key1
(integer) 11
9.同时获得/设置多个值
MGET key [key ...]
MSET key value [key value ...]
例:
127.0.0.1:6379> MSET key1 v1 key2 v2 key3 v3
OK
127.0.0.1:6379> GET key2
"v2"
127.0.0.1:6379> MGET key1 key3
1) "v1"
2) "v3"