redis key基本操作命令RANDOMKEY,Rename,Renamenx,Type详解

2017年10月17日 10:07 | 2809次浏览 作者原创 版权保护

13,Redis RANDOMKEY 命令

Redis RANDOMKEY 命令从当前数据库中随机返回一个 key 。

语法

redis RANDOMKEY 命令基本语法如下:

redis 127.0.0.1:6379> RANDOMKEY

可用版本

>= 1.0.0

返回值

当数据库不为空时,返回一个 key 。 当数据库为空时,返回 nil 。

实例

# 数据库不为空

redis> MSET fruit "apple" drink "beer" food "cookies"   # 设置多个 key
OK

redis> RANDOMKEY
"fruit"

redis> RANDOMKEY
"food"

redis> KEYS *    # 查看数据库内所有key,证明 RANDOMKEY 并不删除 key
1) "food"
2) "drink"
3) "fruit"


# 数据库为空

redis> FLUSHDB  # 删除当前数据库所有 key
OK

redis> RANDOMKEY
(nil)

打开redis客户端命令框(windows环境如何打开请参考https://www.vxzsk.com/239.html),输入以上实例命令,效果如下


14,Redis Rename 命令

Redis Rename 命令用于修改 key 的名称 。

语法

redis Rename 命令基本语法如下:

redis 127.0.0.1:6379> RENAME OLD_KEY_NAME NEW_KEY_NAME

可用版本

>= 1.0.0

返回值

改名成功时提示 OK ,失败时候返回一个错误。

当 OLD_KEY_NAME 和 NEW_KEY_NAME 相同,或者 OLD_KEY_NAME 不存在时,返回一个错误。 当 NEW_KEY_NAME 已经存在时, RENAME 命令将覆盖旧值。

实例

# key 存在且 newkey 不存在

redis> SET message "hello world"
OK

redis> RENAME message greeting
OK

redis> EXISTS message               # message 不复存在
(integer) 0

redis> EXISTS greeting              # greeting 取而代之
(integer) 1


# 当 key 不存在时,返回错误

redis> RENAME fake_key never_exists
(error) ERR no such key


# newkey 已存在时, RENAME 会覆盖旧 newkey

redis> SET pc "lenovo"
OK

redis> SET personal_computer "dell"
OK

redis> RENAME pc personal_computer
OK

redis> GET pc
(nil)

redis:1> GET personal_computer      # 原来的值 dell 被覆盖了
"lenovo"

打开redis客户端命令框(windows环境如何打开请参考https://www.vxzsk.com/239.html),输入以上实例命令,效果如下

15,Redis Renamenx 命令

Redis Renamenx 命令用于在新的 key 不存在时修改 key 的名称 。

语法

redis Renamenx 命令基本语法如下:

redis 127.0.0.1:6379> RENAMENX OLD_KEY_NAME NEW_KEY_NAME

可用版本

>= 1.0.0

返回值

修改成功时,返回 1 。 如果 NEW_KEY_NAME 已经存在,返回 0 。

实例

# newkey 不存在,改名成功

redis> SET player "MPlyaer"
OK

redis> EXISTS best_player
(integer) 0

redis> RENAMENX player best_player
(integer) 1


# newkey存在时,失败

redis> SET animal "bear"
OK

redis> SET favorite_animal "butterfly"
OK

redis> RENAMENX animal favorite_animal
(integer) 0

redis> get animal
"bear"

redis> get favorite_animal
"butterfly"


16,Redis Type 命令

Redis Type 命令用于返回 key 所储存的值的类型。

语法

redis Renamenx 命令基本语法如下:

redis 127.0.0.1:6379> TYPE KEY_NAME

可用版本

>= 1.0.0

返回值

返回 key 的数据类型,数据类型有:

none (key不存在)

string (字符串)

list (列表)

set (集合)

zset (有序集)

hash (哈希表)

实例

# 字符串

redis> SET weather "sunny"
OK

redis> TYPE weather
string


# 列表

redis> LPUSH book_list "programming in scala"
(integer) 1

redis> TYPE book_list
list


# 集合

redis> SADD pat "dog"
(integer) 1

redis> TYPE pat
set

16中key已经讲解完毕,在接下来的操作命令中将不在重点介绍,将来会开辟一个新的频道,redis key频道重点详解key操作命令


小说《我是全球混乱的源头》
此文章本站原创,地址 https://www.vxzsk.com/254.html   转载请注明出处!谢谢!

感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程