作业一:string list hash结构中,每个至少完成5个命令,包含插入 修改 删除 查询,list 和hash还需要增加遍历的操作命令
1、 string类型数据的命令操作:
(1) 设置键值:
(2) 读取键值:
(3) 数值类型自增1:
(4) 数值类型自减1:
(5) 查看值的长度:
2、 list类型数据的命令操作:
(1)对列表city插入元素:Shanghai Suzhou Hangzhou
(2)将列表city里的头部的元素移除
(3)将name列表的尾部元素移除到number列表的头部
(4) 对一个已存在的列表插入新元素
(5)查看list的值长度
3、 hash类型数据的命令操作:
(1) 设置一个hash表,order表里包括的键值信息有:id:1,customer_name:张三
(2) 创建一个hash表,表里的键值批量插入
(3) 获取order对应的map的所有key
(4) 获取order对应的map的键值数量
(5) 获取order表里的id值
4、Keys相关的命令操作
(1) 查看key是否存在
(2) 查找满足pattern的keys
(3) 查看key的超时时间
(4) 遍历key
String
(1)127.0.0.1:6379> set ss 1
OK
(2)127.0.0.1:6379> get ss
"1"
(3)127.0.0.1:6379> incr ss
(integer) 2
127.0.0.1:6379> get ss
"2"
(4)127.0.0.1:6379> decr ss
(integer) 1
127.0.0.1:6379> get ss
"1"
(5)127.0.0.1:6379> set a qwert
OK
127.0.0.1:6379> strlen a
(integer) 5
list
(1)127.0.0.1:6379> lpush city Shanghai Suzhou Hangzhou
(integer) 3
(2)127.0.0.1:6379> lpop city
"Hangzhou"
(3)127.0.0.1:6379> lpush name hehe haha xixi
(integer) 3
127.0.0.1:6379> lpush number 34 45 56
(integer) 3
127.0.0.1:6379> rpoplpush name number
"hehe"
(4)127.0.0.1:6379> rpush name hihi
(integer) 3
(5)127.0.0.1:6379> llen name
(integer) 3‘
hash
(1)127.0.0.1:6379> hmset order id 1 customer_name "张三"
OK
127.0.0.1:6379> hmset customer_name "张三"
127.0.0.1:6379> hgetall order
id
1
customer_name
张三
(2)127.0.0.1:6379> hmset order2 id 2 customer_name 李四
OK
(3)127.0.0.1:6379> hkeys order
id
customer_name
(4)127.0.0.1:6379> hlen order
2
(5)127.0.0.1:6379> hmget order id
1
list
127.0.0.1:6379> del mykey
(integer) 0
127.0.0.1:6379> lpush mykey a b c d
(integer) 4
127.0.0.1:6379> lrange 0 3
(error) ERR wrong number of arguments for 'lrange' command
127.0.0.1:6379> lrange mykey 0 3
1) "d"
2) "c"
3) "b"
4) "a"
127.0.0.1:6379> lset mykey 1 e
OK
127.0.0.1:6379> lrange mykey 0 -1
1) "d"
2) "e"
3) "b"
4) "a"
127.0.0.1:6379> del mykey
(integer) 1
2、举例说明list和hash的应用场景,每个至少一个场景
Hash:可以作为购物车,其中用户id作为key,商品id作为field,商品数量作为value。
List:微博消息和微信公众号消息