redis中string list hash结构中增、删、改、查

一、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 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值