一、Strings
详细内容可参考:Redis命令中心(Redis commands) -- Redis中国用户组(CRUG)
1、exists
查看key是否存在
127.0.0.1:6379> exists mykey
(integer) 0
2、append
增加key中的内容
127.0.0.1:6379> append mykey "hello "
(integer) 6
127.0.0.1:6379> append mykey "world"
(integer) 11
3、get
返回key的内容
127.0.0.1:6379> get mykey
"hello world"
4、set
替换(覆盖)原内容
127.0.0.1:6379> set mykey xiaohua
OK
127.0.0.1:6379> get mykey
"xiaohua"
127.0.0.1:6379> get yourkey
"xiaohong"
5、mset
一起进行替换(覆盖)
127.0.0.1:6379> mset mykey hello yourkey world
OK
6、mget
一起进行get
127.0.0.1:6379> mget mykey yourkey
1) "hello"
2) "world"
7、incr
加一
127.0.0.1:6379> set key1 100
OK
127.0.0.1:6379> incr key1
(integer) 101
127.0.0.1:6379> get key1
"101"
8、decr
减一
127.0.0.1:6379> decr key1
(integer) 100
127.0.0.1:6379> get key1
"100"
9、incrby
加固定数值(eg:10)
127.0.0.1:6379> incrby key1 10
(integer) 110
127.0.0.1:6379> get key1
"110"
10、decrby
减固定数值(eg:10)
127.0.0.1:6379> decrby key1 10
(integer) 100
127.0.0.1:6379> get key1
"100"
11、setnx
如果key(存在——>什么也不做、不存在——>设置为value)
127.0.0.1:6379> setnx key1 200
(integer) 0
127.0.0.1:6379> get key1
"100"
127.0.0.1:6379> setnx key2 200
(integer) 1
127.0.0.1:6379> get key2
"200"
12、getrange
返回指定位置的value
127.0.0.1:6379> set key3 "wo shi xiao ming"
OK
127.0.0.1:6379> getrange key3 0 -1
"wo shi xiao ming"
127.0.0.1:6379> getrange key3 0 5
"wo shi"
13、setrange
修改部分内容(eg:将13之后改为hua)
127.0.0.1:6379> setrange key3 13 hua
(integer) 16
127.0.0.1:6379> get key3
"wo shi xiao mhua"
127.0.0.1:6379>
14、strlen
返回key的string类型value的长度。如果key对应的非string类型,就返回错误
redis> STRLEN mykey
(integer) 11
redis> STRLEN nonexisting
(integer)
二、Hashes
详细内容可参考:Redis命令中心(Redis commands) -- Redis中国用户组(CRUG)
1、hset、hget
hest:设置key中的field的value。
hget:获取key中的field的value。
27.0.0.1:6379> hset k1 name xiaoming
(integer) 1
127.0.0.1:6379> hget k1 name
"xiaoming"
127.0.0.1:6379> hset k1 address beijing
(integer) 1
127.0.0.1:6379> hget k1 address
"beijing"
2、hmset、hmget
一起设置和获取
127.0.0.1:6379> hmset k2 name xiaohong address shanghai
OK
127.0.0.1:6379> hmget k2 name address
1) "xiaohong"
2) "shanghai"
3、hexists
查看field是否存在,存在返回为1反之为0
127.0.0.1:6379> hexists k1 age
(integer) 0
127.0.0.1:6379> hexists k1 address
(integer) 1
3、hdel
删除
127.0.0.1:6379> hdel k1 name address
(integer) 2
4、hkeys
返回field
127.0.0.1:6379> hkeys k2
1) "name"
2) "address"
5、hgetall
返回 key 指定的哈希集中所有的字段和值
127.0.0.1:6379> hgetall k2
1) "name"
2) "xiaohong"
3) "address"
4) "shanghai"
6、hstrlen
查看长度field的value的字符串长度
127.0.0.1:6379> hstrlen k2 name
(integer) 8
127.0.0.1:6379> hstrlen k2 address
(integer) 8
7、hsetnx
如果有value则不变没有则添加
127.0.0.1:6379> hsetnx k2 name xiaoming
(integer) 0
127.0.0.1:6379> hsetnx k2 age 18
(integer) 1
8、hvals
查看field
127.0.0.1:6379> hvals k2
1) "xiaohong"
2) "shanghai"
3) "18"
9、hincrby
给value加数值
127.0.0.1:6379> hset k1 long 15
(integer) 1
127.0.0.1:6379> hincrby k1 long 3
(integer) 18
127.0.0.1:6379> hvals k1
1) "18"
127.0.0.1:6379> hincrby k1 long -5
(integer) 13
10、hlen
返回field数目
127.0.0.1:6379> hkeys k2
1) "name"
2) "address"
3) "age"
127.0.0.1:6379> hlen k2
(integer) 3
三、List
详细内容可参考:Redis命令中心(Redis commands) -- Redis中国用户组(CRUG)
1、lpush
指定的值插入到存于 key 的列表的头部
127.0.0.1:6379> LPUSH k1 "world"
(integer) 1
127.0.0.1:6379> LPUSH k1 "hello"
(integer) 2
127.0.0.1:6379> lpush k1 ni hao
(integer) 4
2、rpush
指定的值插入到存于 key 的右部(尾部)
方法如上
3、lrange
返回存储在 key 的列表里指定范围内的元素
127.0.0.1:6379> lrange k1 1 -1
1) "ni"
2) "hello"
3) "world"
4、lpushx
当 key 已经存在并且存着一个 list 的时候,在key的list头部插入 value。 与 LPUSH 相反,当 key 不存在的时候不会进行任何操作
127.0.0.1:6379> lpushx k1 5 2 1
(integer) 7
127.0.0.1:6379> lrange k1 1 -1
1) "2"
2) "5"
3) "hao"
4) "ni"
5) "hello"
127.0.0.1:6379> lpushx k2 1 2 3
(integer) 0
5、lpop
从左边取出一个value
127.0.0.1:6379> lpop k1
"1"
127.0.0.1:6379> lrange k1 0 -1
1) "2"
2) "5"
3) "hao"
4) "ni"
5) "hello"
6) "world"
6、llen
value值个数
127.0.0.1:6379> llen k1
(integer) 5
7、lrem
从左边删除?个value
127.0.0.1:6379> lrange k1 0 -1
1) "5"
2) "hao"
3) "ni"
4) "hello"
5) "world"
127.0.0.1:6379> lrem k1 1 hao
(integer) 1
127.0.0.1:6379> lrem k1 1(删除1个) hello
(integer) 1
127.0.0.1:6379> lrange k1 0 -1
1) "5"
2) "ni"
3) "hello"
4) "world"
8、lset
替换某个位置的value
127.0.0.1:6379> lrange k1 0 -1
1) "5"
2) "ni"
3) "hello"
4) "world"
127.0.0.1:6379> lset k1 1 55
OK
127.0.0.1:6379> lrange k1 0 -1
1) "5"
2) "55"
3) "hello"
4) "world"
9、lindex
获取某个位置的value
127.0.0.1:6379> LINDEX k1 3
"world"
10、ltrim
保留固定位置value值剩下删除
127.0.0.1:6379> lrange k1 0 -1
1) "5"
2) "55"
3) "hello"
4) "world"
127.0.0.1:6379> LTRIM k1 1 -1
OK
127.0.0.1:6379> lrange k1 0 -1
1) "55"
2) "hello"
3) "world"
11、linsert
在某个value(之前/之后)插入一个value
127.0.0.1:6379> LINSERT k1 before hello xiaohua
(integer) 4
127.0.0.1:6379> lrange k1 0 -1
1) "55"
2) "xiaohua"
3) "hello"
4) "world"
127.0.0.1:6379> lrange k1 0 -1
1) "55"
2) "xiaohua"
3) "hello"
4) "world"
127.0.0.1:6379> LINSERT k1 after xiaohua xiaoming
(integer) 5
127.0.0.1:6379> lrange k1 0 -1
1) "55"
2) "xiaohua"
3) "xiaoming"
4) "hello"
5) "world"
#查看有哪些key
127.0.0.1:6379> keys *
127.0.0.1:6379> keys *
1) "mykey"
2) "yourkey"
3) "key1"
4) "key3"
5) "key2"
#删除key
127.0.0.1:6379> del mykey key名
127.0.0.1:6379> del mykey yourkey key1 key2 key3
(integer) 5