ITPub博客

首页 > 数据库 > NoSQL > redis常用命令

redis常用命令

原创 NoSQL 作者:z597011036 时间:2024-01-29 14:26:23 0 删除 编辑

一、字符串

      字符串是redis最基本的键值对数据类型,数据库会把单独的键和单独的值进行关联起来,被关联的键和值可以是普通的文字,图形,视频,音频,压缩文件。数据存储是无序的。常用场景:数据缓存、存储文章内容、存储日志、分布式锁。

set abc "123"     #给abc键赋值

get abc      #输出键abc的值

getset  abc "456 "     #输出键abc的值,并重新给abc赋新值

mset  a 1 b 2 c 3      #给多个键赋值

mget  a b c      #输出多个键的值

msetnx  a  "123 " b  "456 " c  "789 "   #给多个为空的键赋值(键必须不存在)

strlen a      #统计键的长度

getrange   a  0  4   #获取指定键a的数据

setrange  a  4  "111 "     #将键a从第四个字符开始替换新值

append  a   "12345 "      #将新值追加到键的末尾

incrby  a  300       #在键a原有值的基础上再加300 (整数相加减)

decrby  a  200      # 在键a原有值的基础上减去200  (整数相加减)

incr  a       #在键原有基础上加1(自增)

decr  a      # 在键原有基础上减1(自减)

incrbyfloat  a  3.14       # 在键原有基础上加3.14(浮点数相加减)

decrbyfloat  a  3.14      # 在键原有基础上减去3.14(浮点数相加减)


二、散列

     散列会将一个键和一个散列在数据库关联起来,用户可以在散列中为任意多个字段设置值,散列的字段和值既可以是文本数据,也可以是二进制数据。 数据存储是无序的。常用场景:实现记数器、用户登陆会话保存、文章数据存储。

hset  tong  a   "111 "       #tong是散列键,a是字段,111是键的值

hsetnx   tong  a   "111 "   #字段a不存在的情况才可以赋值。

hget tong a                   #输出tong散列a字段的值

hgetall tong                  #输出散列tong所有字段

hincrby  tong  a  100               #a字段的值减去100

hincrbyfloat  tong  a  21.75     #a字段的值增加21.75

hincrbyfloat  tong  a  -20.12    #减去a字段的值

hstrlen  tong  a      #输出散列中a字段的长度

hexists  tong   b     #判断tong散列中是否有b字段存在

hdel  tong  b          #删除散列中b字段

hlen  tong              #查询散列包含的字段数量

hmset tong  a   "111 "  b      "222 "   c     "333 "     #一次为多个字段设置值

hmget  tong  a  b  c        #一次输出多个字段的值

hkeys  tong            #输出散列tong所有字段

hvals  tong             #输出散列tong所有值


三、列表

      列表是一种线型的有序结构,按照元素被推入列表中的顺序来存储,这些元素可以是文字,二进制数据,列表中的数据可以重复出现。常用场景:消息队列、分页、待办事项列表。

lpush  todo  "123"     #元素推入到列表左端

lpush  todo   "1"   "2"   "3"     #一次推入多个元素

rpush  todo   "4"   "5"    "6"   #将元素推入到列表右端

lpushhx  todo   "1"     #推入已存在的列表放在最左端(前提是列表已存在)

rpushhx  todo   "1"     # 推入已存在的列表放在最右端(前提是列表已存在)

lpop  todo       #弹出列表最左端的元素

rpop todo         #弹出列表最右端的元素

rpoplpush  todo1  todo2     #弹出 todo1列表最右端的元素放到 todo2最左端(意思就是把 todo1的值全部放到 todo2中)

llen  todo               #获取列表的长度

lindex  todo  3       #获取列表指定索引上的值

lrange  todo  0 3   #获取列表指定索引范围中的值

lset todo 3   "new" #在列表指定索引上设置新值

linsert todo after  "c"   "000"    #将000插入到todo列表c字段的后面

ltrim  todo  0  3    #删除索引在0到3以外的值(删除范围外的值)

lrem  todo  0  3    # 删除索引在0到3以内的值(删除范围内的值)

blpop  todo  5      #左边弹出时阻塞5秒

brpop  todo  5       #右边弹出时阻塞5秒


四、集合

    允许用户将任意多个名不相同的元素存储到集合中,这些元素可以是文本数据,二进制数据。列表可以存储重复的值,集合不能存储重复的值。列表是有序存储,集合是无序存储。常用场景:网站访问统计、博客点赞数、投票、抽奖、共同关注和推荐关注。



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25854343/viewspace-3005545/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Mysql索引使用
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-03-31

  • 博文量
    79
  • 访问量
    486678