127.0.0.1:6379[1]>set name zhangsan
OK
127.0.0.1:6379[1]>set age 12
OK
127.0.0.1:6379[1]>set address cd
OK
127.0.0.1:6379[1]> keys *
1)"address"
2)"age"
3)"name"
127.0.0.1:6379[1]>
2. exists key [判断这个key是否存在]
127.0.0.1:6379[1]> exists name
(integer) 1
127.0.0.1:6379[1]> exists name1
(integer) 0
3. move key db [移动一个key到指定数据库]
127.0.0.1:6379[1]> get name
"zhangsan"
127.0.0.1:6379[1]> move name 2
(integer) 1
127.0.0.1:6379[1]> get name
(nil)
127.0.0.1:6379[1]>select 2
OK
127.0.0.1:6379[2]> get name
"zhangsan"
4. expire key 秒钟 [设置一个key的过期时间]
5. ttl key [查看指定的key还有多少秒过期,-1不过期,-2已过期]
127.0.0.1:6379[1]> expire name 15
(integer) 1
127.0.0.1:6379[1]> ttl name
(integer) 12
127.0.0.1:6379[1]> ttl name
(integer) 4
127.0.0.1:6379[1]> get name
(nil)
127.0.0.1:6379[1]> ttl name
(integer) -2
127.0.0.1:6379[1]> ttl age
(integer) -1
6. type key [查看指定的key是什么类型]
127.0.0.1:6379[1]>type address
string
字符串(String)
1. get key [得到值] / set key value [设置键值] / del key [删除]
append key value [在指定键的值中追加字符串] / strlen key [字符串长度]
127.0.0.1:6379[1]>set name zhangsan
OK
127.0.0.1:6379[1]> get name
"zhangsan"
127.0.0.1:6379[1]> append name 123
(integer) 11
127.0.0.1:6379[1]> get name
"zhangsan123"
127.0.0.1:6379[1]> strlen name
(integer) 11
127.0.0.1:6379[1]> del name
(integer) 1
127.0.0.1:6379[1]> get name
(nil)
127.0.0.1:6379[1]>set like 0
OK
127.0.0.1:6379[1]> incr like
(integer) 1
127.0.0.1:6379[1]> incr like
(integer) 2
127.0.0.1:6379[1]> incr like
(integer) 3
127.0.0.1:6379[1]> decr like
(integer) 2
127.0.0.1:6379[1]> decr like
(integer) 1
127.0.0.1:6379[1]> decr like
(integer) 0
127.0.0.1:6379[1]> incrby like 5
(integer) 5
127.0.0.1:6379[1]> incrby like 5
(integer) 10
127.0.0.1:6379[1]> incrby like 5
(integer) 15
127.0.0.1:6379[1]> decrby like 5
(integer) 10
127.0.0.1:6379[1]> decrby like 5
(integer) 5
127.0.0.1:6379[1]> decrby like 5
(integer) 0
127.0.0.1:6379[1]>set like k1
OK
127.0.0.1:6379[1]> incr like
(error) ERR value is not an integer or out of range #不是数字操作会报错
3. getrange key start end [获取指定key指定范围的值]
setrange key offset value [将value的值从指定位置开始覆盖原有的值]
127.0.0.1:6379[1]>set name abcdefghijklmnopqrstuvwxyz
OK
127.0.0.1:6379[1]> getrange name 0 10
"abcdefghijk"
127.0.0.1:6379[1]> setrange name 0 123456
(integer) 26
127.0.0.1:6379[1]> get name
"123456ghijklmnopqrstuvwxyz"
4. setex key seconds value [(set with expire) 设置键值,并加上过期时间]
setnx key value [(set if not exist) 如果不存在,才设置]
127.0.0.1:6379[1]> setex name 5 zhangsan
OK
127.0.0.1:6379[1]> ttl name
(integer) 3
127.0.0.1:6379[1]> get name
(nil)
127.0.0.1:6379[1]>set name zhangsan
OK
127.0.0.1:6379[1]> setnx name lisi
(integer) 0
127.0.0.1:6379[1]> get name
"zhangsan"
5. mset key value [key value ...] [设置多个键值]
mget key [key ...] [得到多个值]
msetnx key value [key value ...] [设置多个键值,如果其中一个key重复,则都不存入]
127.0.0.1:6379> sadd s1 x y z
(integer) 3
127.0.0.1:6379> sadd s2 x
(integer) 1
127.0.0.1:6379> sadd s3 y
(integer) 1
127.0.0.1:6379>sdiff s1 s2 s3
1)"z"
8. sinter key [key ...] [返回指定所有的集合的成员的交集]
127.0.0.1:6379> sadd s1 x y z
(integer) 3
127.0.0.1:6379> sadd s2 w x
(integer) 2
127.0.0.1:6379> sadd s3 x z
(integer) 2
127.0.0.1:6379> sinter s1 s2 s3
1)"x"
9. sunion key [key ...] [返回给定的多个集合的并集中的所有成员]
127.0.0.1:6379> sadd s1 x y z
(integer) 3
127.0.0.1:6379> sadd s2 w x
(integer) 2
127.0.0.1:6379> sadd s3 x z
(integer) 2
127.0.0.1:6379> sunion s1 s2 s3
1)"y"
2)"w"
3)"z"
4)"x"
哈希(Hash)
1. hset key field value [设置 key 指定的哈希集中指定字段的值]
hget key field [返回 key 指定的哈希集中该字段所关联的值]
hmset key field value [field value ...] [设置 key 指定的哈希集中指定字段的值。该命令将重写所有在哈希集中存在的字段。如果 key 指定的哈希集不存在,会创建一个新的哈希集并与 key 关联]
hmget key field [field ...] [返回 key 指定的哈希集中指定字段的值]
127.0.0.1:6379> hset dog name huahua
(integer) 1
127.0.0.1:6379> hset dog age 2
(integer) 1
127.0.0.1:6379> hget dog name
"huahua"
127.0.0.1:6379> hget dog age
"2"
127.0.0.1:6379> hmset dog address cd gender female
OK
127.0.0.1:6379> hmget dog name age gender
1)"huahua"
2)"2"
3)"female"
127.0.0.1:6379> hgetall dog
1)"name"
2)"huahua"
3)"age"
4)"2"
5)"address"
6)"cd"
7)"gender"
8)"female"
127.0.0.1:6379> hdel dog address gender
(integer) 2
127.0.0.1:6379> hgetall dog
1)"name"
2)"huahua"
3)"age"
4)"2"
2. hlen key [返回 key 指定的哈希集包含的字段的数量。]
127.0.0.1:6379> hlen dog
(integer) 2
3. hexists key field [返回hash里面field是否存在]
127.0.0.1:6379> hgetall dog
1)"name"
2)"huahua"
3)"age"
4)"2"
127.0.0.1:6379> hexists dog name
(integer) 1
127.0.0.1:6379> hexists dog address
(integer) 0
4. hkeys key [返回 key 指定的哈希集中所有字段的名字]
hvals key [返回 key 指定的哈希集中所有字段的值]
127.0.0.1:6379> hkeys dog
1)"name"
2)"age"
127.0.0.1:6379> hvals dog
1)"huahua"
2)"2"
5. hincrby key field increment [增加 key 指定的哈希集中指定字段的数值]
hincrbyfloat key field increment [为指定 key 的 hash 的 field 字段值执行 float 类型的 increment 加]
127.0.0.1:6379> hget dog age
"2"
127.0.0.1:6379> hincrby dog age 1
(integer) 3
127.0.0.1:6379> hincrbyfloat dog age 0.5
"3.5"
6. hsetnx key field value [只在 key 指定的哈希集中不存在指定的字段时,设置字段的值]
127.0.0.1:6379> hgetall dog
1)"name"
2)"huahua"
3)"age"
4)"3.5"
127.0.0.1:6379> hsetnx dog name xiaohei
(integer) 0
127.0.0.1:6379> hsetnx dog gender female
(integer) 1
有序集合(zset [sorted set])
1. zadd key [NX|XX] [CH] [INCR] score member [score member ...] [将所有指定成员添加到键为key有序集合(sorted set)里面。 添加时可以指定多个分数/成员(score/member)对。]