1.字符串(String)相关操作
set --设置值
127.0.0.1:6379> set animal 'Cat' OK
get --获取值
127.0.0.1:6379> get animal "Cat"
mset --设置多个键值对
127.0.0.1:6379> mset user1 'John' user2 'Amy' OK
mget --获取多个键值对
127.0.0.1:6379> mget user1 user2 1) "John" 2) "Amy"
append --添加字符串(set会覆盖原来的值)
127.0.0.1:6379> set animal "Dog" OK 127.0.0.1:6379> get animal "Dog" 127.0.0.1:6379> append animal " Cat" (integer) 7 127.0.0.1:6379> get animal "Dog Cat"
del --删除
127.0.0.1:6379> del animal (integer) 1 127.0.0.1:6379> get animal (nil)
incre/decr --增加/减少 1
127.0.0.1:6379> set num 10 OK 127.0.0.1:6379> incr num (integer) 11 127.0.0.1:6379> get num "11" 127.0.0.1:6379> decr num (integer) 10 127.0.0.1:6379> get num "10"
2.列表(List)相关操作
lpush/rpush --从左、右插入数据
127.0.0.1:6379> lpush q1 "John" "Cat" "Amy" (integer) 3 127.0.0.1:6379> llen q1 (integer) 3
127.0.0.1:6379> rpush q1 "Bob" (integer) 4 127.0.0.1:6379> lrange q1 0 8888 1) "Amy" 2) "Cat" 3) "John" 4) "Bob"
lrange -- 获取指定长度
127.0.0.1:6379> lrange q1 0 -1 1) "Amy" 2) "Cat" 3) "John"
ltrim --截取一定长度的数据
127.0.0.1:6379> ltrim q1 0 2 OK 127.0.0.1:6379> lrange q1 0 -1 1) "Zhang1" 2) "Oku" 3) "Amy"
lpop/rpop --移除最左的/右的元素并返回
127.0.0.1:6379> lrange q1 0 -1 1) "Oku" 2) "Amy"
127.0.0.1:6379> rpop q1 "Amy" 127.0.0.1:6379> lrange q1 0 -1 1) "Oku"
lpushx/rpushx --key存在的时候才插入数据,不存在时不做任何处理
127.0.0.1:6379> lpushx q1 "Zhang1" (integer) 6 127.0.0.1:6379> lrange q1 0 -1 1) "Zhang1" 2) "Oku" 3) "Amy" 4) "Cat" 5) "John" 6) "Bob" 127.0.0.1:6379> rpushx q1 "hu2" (integer) 7 127.0.0.1:6379> lrange q1 0 -1 1) "Zhang1" 2) "Oku" 3) "Amy" 4) "Cat" 5) "John" 6) "Bob" 7) "hu2"
127.0.0.1:6379> rpushx q2 "Amy"
(integer) 0
127.0.0.1:6379> lpushx q2 "Amy"
(integer) 0
3.集合(Set)相关操作
sadd/srem --添加/删除元素
127.0.0.1:6379> sadd zoo Cat Dog (integer) 2 127.0.0.1:6379> smembers zoo 1) "Cat" 2) "Dog" 127.0.0.1:6379> srem zoo Cat (integer) 1
127.0.0.1:6379> srem zoo Cat (integer) 0 127.0.0.1:6379> smembers zoo 1) "Dog"
127.0.0.1:6379> sadd zoo Cat (integer) 1 127.0.0.1:6379> smembers zoo 1) "Cat" 2) "Dog"
sismember--判断是否为set的一个元素
127.0.0.1:6379> sismember zoo Cat (integer) 1 127.0.0.1:6379> sismember zoo Cow (integer) 0
smembers --返回该集合的所有成员
sdiff --返回一个集合与其他集合的差异
127.0.0.1:6379> sdiff zoo zoo1 1) "Dog" 127.0.0.1:6379> sdiff zoo1 zoo 1) "Cow"
sinter --返回几个集合的交集
127.0.0.1:6379> sinter zoo1 zoo 1) "Cat" 127.0.0.1:6379> sinter zoo zoo1 1) "Cat"
sunion --返回几个集合的并集
127.0.0.1:6379> sunion zoo zoo1 1) "Cat" 2) "Cow" 3) "Dog" 127.0.0.1:6379> sunion zoo1 zoo 1) "Cat" 2) "Dog" 3) "Cow"
4.散列(Hash)相关操作
hset/hget --设置/获取散列值
127.0.0.1:6379> hset news:1 title "News Title" (integer) 1 127.0.0.1:6379> hset news:1 content "News Content" (integer) 1 127.0.0.1:6379> hget news:1 title "News Title" 127.0.0.1:6379> hget news:1 content "News Content"
hmset/hmget --设置/获取多对散列值
127.0.0.1:6379> hmget news:1 title content 1) "News Title" 2) "News Content" 127.0.0.1:6379> hmset news:2 title "Title2" content "Content2" is_valid 1 OK 127.0.0.1:6379> hmget news:2 title content is_valid 1) "Title2" 2) "Content2" 3) "1"
hsetnx --如果散列已经存在,则不设置
hkeys/hvals --返回所有Keys/Values
127.0.0.1:6379> hkeys news:1 1) "title" 2) "content" 127.0.0.1:6379> hkeys news:2 1) "title" 2) "content" 3) "is_valid" 127.0.0.1:6379> hvals news:1 1) "News Title" 2) "News Content" 127.0.0.1:6379> hvals news:2 1) "Title2" 2) "Content2" 3) "1"
hlen -- 返回散列包含域(field)的数量
127.0.0.1:6379> hlen news:1 (integer) 2 127.0.0.1:6379> hlen news:2 (integer) 3
hdel --删除散列指定的域(field)
127.0.0.1:6379> hdel news:2 is_valid (integer) 1 127.0.0.1:6379> hlen news:2 (integer) 2
hexists --判断是否存在
127.0.0.1:6379> hexists news:2 is_valid (integer) 0 127.0.0.1:6379> hset news:2 is_valid 1 (integer) 1 127.0.0.1:6379> hexists news:2 is_valid (integer) 1