# 设置键值对 SET name Twansh # 读取键对应的值 GET name # 设置数字键值对,读取的时候数字是以字符串的形式返回 SET num 42 # 删除键值对 DEL name # 判断键值对是否存在 EXISTS name # 查找所有的键值对与特殊匹配的键值对(跟Linux的那个匹配模式差不多) KEYS * KEYS nu* # 删除掉所有的键值对 FLUSHALL # 查看键值对的过期时间 TTL name # 设置一个带有过期时间的键值对(10是指10s) EXPIRE name 10 # 或者 SETEX name 10 周杰伦 # 当键值对不存在时设置新的键值对,存在的时候则不进行任何操作 SETNX name 周杰伦
127.0.0.1:6379> SET name Twansh OK 127.0.0.1:6379> SET number 42 OK 127.0.0.1:6379> GET name "Twansh" 127.0.0.1:6379> GET number "42" 127.0.0.1:6379> DEL name (integer) 1 127.0.0.1:6379> GET name (nil) 127.0.0.1:6379> EXISTS name (integer) 0 127.0.0.1:6379> EXISTS number (integer) 1 127.0.0.1:6379> KEYS * 1) "num" 2) "number" 3) "name" 127.0.0.1:6379> KEYS nu* 1) "num" 2) "number" 127.0.0.1:6379> FLUSHALL OK 127.0.0.1:6379> KEYS * (empty array) 127.0.0.1:6379> SETNX name 周杰伦 (integer) 0 127.0.0.1:6379> EXPIRE name 10 (integer) 1 127.0.0.1:6379> TTL name (integer) 7 127.0.0.1:6379> 127.0.0.1:6379> TTL name (integer) 3
redis并不原生支持中文,示例如下
1 2 3 4
127.0.0.1:6379> SET name 周杰伦 OK 127.0.0.1:6379> GET name "\xe5\x91\xa8\xe6\x9d\xb0\xe4\xbc\xa6"
要是想以原本数据的形式进行输出,在启动redis-cli的时候需要加上参数
1
redis-cli --raw
这样子就可以输出原文
列表List操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
# 把a值填入列表letter首位 LPUSH letter a # 这个数据结构类似栈,把b压入列表,所以此处列表内的排序是b a LPUSH letter b # 自然也是可用一次性写入多个元素的 # 利用LRANGE来读取列表内的所有内容(0代表列表开始的位置,-1代表列表结束的位置) LRANGE letter 0 -1 # 从列表的尾部添加元素 RPUSH letter f # 利用LPOP和RPOP从列表的头部和尾部删除元素 LPOP letter RPOP letter # 利用LPOP和RPOP一次性删除多个元素 LPOP letter 2 RPOP letter 2 # 利用LTRIM删除出了约定范围以外的所有元素(如下是删除1-3以外的所有元素) LTRIM letter 1 3
# 添加元素 ZADD result 150 Chinese 140 Math 130 English # 输出元素 ZRANGE result 0 -1 # 输出元素与其对应的浮点数 ZRANGE result 0 -1 WITHSCORES # 查看元素所对应的浮点数 ZSCORE result Chinese # 查看某个元素的排名 ZRANK result Chinese