五大基本数据类型

strings

set key value -> OK
get key -> value
incr key -> value 自增(当value为number时),原子性操作
decr key -> value 自减 效果同上

lists

列表,底层结构类似于Java中的LinkedList集合,因此当lists中有一个元素或一万个元素,在其头部或者尾部插入数据的效率是相同的。但元素定位比较慢。
其操作用的方法名称类似于Map。
lpush lists value -> length 在lists的首节点添加value,可以看成 left push
rpush lists value -> length 在lists的首尾点添加value,可以看成 right push
lrange lists 0 1 -> lists中下标首节点开始算从第0个到第1个的所有元素
lrange lists 0 -2 -> lists中下标首节点开始算从第0个到倒数第2个的所有元素
注意:没有rrange操作。

set

类似于Java中的HashSet集合,无序不重复
sadd myset one -> 返回修改后影响了几条数据
smembers myset -> 返回myset的所有数据
sismember myset one -> 查看one元素存不存在,存在返回1,不存在返回0
sunion myset youset -> 查看两个set集合的并集

zset

叫它zset可能是因为它所有的命令都是z开头的,有序的set集合,但是要指定排序号(可以从0开始)
zadd zset 0 零 -> 影响的数据行数,如果重复会返回0
zadd zset 1 一 -> 影响的数据行数,如果重复会返回0
zrange zset 0 -1 -> 查看所有的zset中的数据,不包括排序号
zrange zset 0 -1 withscores -> 查看所有的zset中的数据,包括排序号,先显示数据,后显示排序号

hash

hash存的是字符串和字符串值之间的映射,比如一个用户要存储其全名、姓氏、年龄等等,适合使用哈希。
hmset user name 张哲 password 123456 age 18 sex 男 -> OK
hgetall user -> 返回所以的key-value
hget user name -> 返回张哲
hset user password 1234 -> 修改某个key中的某个value值