Redis支持二进Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作
String类型
Redis能存储二进制安全的字符串,最大长度为1GB
redis 127.0.0.1:6379> SET name"John Doe"
OK
redis 127.0.0.1:6379> GET name
"John Doe“
String类型还支持批量的读写操作
redis 127.0.0.1:6379> MSET age 30 sex"male"
OK
redis 127.0.0.1:6379> MGET age sex
1) "30"
2) "male"
String类型其实也可用来存储数字,并支持对数字加减操作。
redis 127.0.0.1:6379> INCR age
(integer) 31
redis 127.0.0.1:6379> INCRBY age 4
(integer) 35
redis 127.0.0.1:6379> GET age
"35"
redis 127.0.0.1:6379> DECR age
(integer) 34
redis 127.0.0.1:6379> DECRBY age 4
(integer) 30
redis 127.0.0.1:6379> GET age
"30"
String类型还支持对其部分的修改和获取操作
redis 127.0.0.1:6379> APPEND name "Mr.“
(integer) 12
redis 127.0.0.1:6379> GET name
"John Doe Mr."
redis 127.0.0.1:6379> STRLEN name
(integer) 12
redis 127.0.0.1:6379> SUBSTR name 0 3
"John"
List类型
Redis能够将数据存储成一个链表,并能对这个链表进行丰富的操作
redis 127.0.0.1:6379> LPUSH students"John Doe"
(integer) 1
redis 127.0.0.1:6379> LPUSH students"Captain Kirk"
(integer) 2
redis 127.0.0.1:6379> LPUSH students"Sheldon Cooper"
(integer) 3
redis 127.0.0.1:6379> LLEN students
(integer) 3
redis 127.0.0.1:6379> LRANGE students 02
1) "Sheldon Cooper"
2) "Captain Kirk"
3) "John Doe"
redis 127.0.0.1:6379> LPOP students
"Sheldon Cooper"
redis 127.0.0.1:6379> LLEN students
(integer) 2
redis 127.0.0.1:6379> LRANGE students 01
1) "Captain Kirk"
2) "John Doe"
redis 127.0.0.1:6379> LREM students 1"John Doe"
(integer) 1
redis 127.0.0.1:6379> LLEN students
(integer) 1
redis 127.0.0.1:6379> LRANGE students 00
1) "Captain Kirk"
Redis也支持很多修改操作
redis 127.0.0.1:6379> LINSERT studentsBEFORE "Captain Kirk" "Dexter Morgan"
(integer) 2
redis 127.0.0.1:6379> LRANGE students 02
1) "Dexter Morgan"
2) "Captain Kirk"
redis 127.0.0.1:6379> LPUSH students"Peter Parker"
(integer) 3
redis 127.0.0.1:6379> LRANGE students 03
1) "Peter Parker"
2) "Dexter Morgan"
3) "Captain Kirk"
redis 127.0.0.1:6379> LTRIM students 1 2
OK
redis 127.0.0.1:6379> LLEN students
(integer) 2
redis 127.0.0.1:6379> LRANGE students 01
1) "Dexter Morgan"
2) "Captain Kirk"
redis 127.0.0.1:6379> LREM students 1"Dexter Morgan"
(integer) 1
redis 127.0.0.1:6379> LLEN students
(integer) 1
redis 127.0.0.1:6379> LRANGE students 01
1) "Captain Kirk"