学习Redis,day3 Redis的key操作~

129 阅读3分钟

「这是我参与2022首次更文挑战的第3天,活动详情查看:2022首次更文挑战

Redis的key操作

基本命令如下:

1、查询所有存在的键keys *

2、设置键值对set key value

实例:设置年龄为1

 set age 1    

3、获取键值对get key

实例:获取索引为key的键值对的值

 get age

3、修改原有的键值对的索引keyrename key new_key

实例:修改key为age的索引为age01

 rename age01    

注意事项: 如果设置的key不存在则返回一个错误;如果设置的新的key在当前数据库中已经存在则会使用旧的key的值覆盖掉新的key的值。

4、(new_key不存在时)修改原有的键值对的索引keyrenamenx key new_key

实例:修改key为age的索引为age01

 rename age01    

注意事项: 如果设置的key不存在则返回一个错误;如果设置的新的key在当前数据库中已经存在则会返回错误。

5、判断该键是否存在EXISTS key

实例:判断age在该数据库中是否存在

 EXISTS age

6、移动该键值对到指定数据库中move key num

实例:移动当前数据库中的age键值对到数据库2中去。

 move age 2

注意事项:数据库2中不存在key为age的键值对,若存在则移动失败。

7、删除当前数据库中的指定键值对数据del key

实例:删除当前数据库中key为age的键值对。

 del age

8、设置键值对有效时间expire key time

实例:设置key为age的键值对有效时间为10s

 expire age 10

注意事项:有效时间的单位为秒(s)

9、查看键值对剩余有效时间ttl key

实例:查看key为age的键值对的剩余有效时间

 ttl age        

10、删除键值对的有效时间persist key

实例:删除key为age的键值对的有效时间

 persist age

11、查看key的类型type keyname

实例:查看当前数据库中存在的key为age的键的类型

 type age       
  • key的类型:
    • none (key不存在)
    • string (字符串)
    • list (列表)
    • set (集合)
    • zset (有序集)
    • hash (哈希表)

常用命令操作示例:

127.0.0.1:6379> keys *		#查看所有的key
(empty array)
127.0.0.1:6379> set age 1	#设置键值对age的值为1
OK
127.0.0.1:6379> set name xuyang	#设置键值对name的值为xuyang
OK
127.0.0.1:6379> keys *		#查看所有的key
1) "name"
2) "age"
127.0.0.1:6379> exists name	#判断数据库是否存在name键
(integer) 1
127.0.0.1:6379> move name 1	#移除数据库中的name键
(integer) 1
127.0.0.1:6379> keys *
1) "age"
127.0.0.1:6379> set name xuyang
OK
127.0.0.1:6379> get name	#获取name键的值
"xuyang"
127.0.0.1:6379> expire name 10	#设置name键的有效时间为10秒
(integer) 1
127.0.0.1:6379> ttl name	#查看name键的剩余有效时间
(integer) 3
127.0.0.1:6379> ttl name
(integer) 2
127.0.0.1:6379> ttl name
(integer) 1
127.0.0.1:6379> ttl name
(integer) 0
127.0.0.1:6379> ttl name
(integer) -2
127.0.0.1:6379> get name
(nil)
127.0.0.1:6379> type age	#查看age的类型
string

以上就是所学习的所有关于Redis KEY的相关操作,明天继续加油!