12 2023 档案
摘要:前面学习了Lua的基本语法,接下来是使用Lua编写脚本 1.可以使用redis.call来调用redis命令 使用redis.call会将redis命令返回的类型 转换成对应的Lua数据类型。 关系如下 与redis.call想类似的就是redis.pcall。 【redis.call与redis.
阅读全文
摘要:【String库】 1.获取长度,相当于# 2.大小写 相当于C#里面的 3.获取子字符串,注意下标从1开始 结尾默认数字是-1。负数指从后往前数 相当于C#里面的 【table库】 1.数组转字符串 使用了table.concat这个方法,参数分别是表类型,自定义的分隔符(默认是空),开始下标(默
阅读全文
摘要:1.可以直接声明一个局部变量来接收函数,也可以直接简写 local square=function(i) return i*i end 简写: local function square(i) return i*i end 2.当调用函数时,参数是一一对应的,如果多了参数,则会忽略,少则会将对应位置
阅读全文
摘要:【Lua表类型】 可以看做是 数组和对象的结合体。兼具两者的性质 1.声明方式一 或者 可以看出这和js中声明对象的形式是一样的 2.声明形式二 可以看到这和js里面的数组形式很像,但是需要注意的是,下标是从1开始,而不是0。 这里可以使用for打印出来数组的内容,需要注意for循环的内容 inde
阅读全文
摘要:Lua是一门脚本语言,可以编写Lua脚本到Redis中执行 如果需要需要调试Lua脚本,可以到Lua官网下载Lua,然后在本地cmd控制台来调试命令 【使用Lua脚本的优点】 1.减少网络开销。Redis每条命令都需要进行网络传输,特别是命令条数很多的情况。 2.原子操作。脚本都会作为一个整体执行,
阅读全文
摘要:1.设置过期时间 expire [keyName] [seconds] eg: expire foo 60 再次使用expire命令会重置键的过期时间。 2.查看剩余过期时间 ttl [keyName] eg: ttl foo ttl表示time to live 3.使用事务 连续执行一系列命令 m
阅读全文
摘要:有序集合。使用分数score来标记每个元素 1.添加元素 zadd mathScore 98 jordan 86 james 77 kobe 添加了三个元素,分数在前 2.假如添加的元素已经存在的话,则会替换原来的分数。 zadd mathScore 79 kobe 则将kobe的分数改为79 3.
阅读全文
摘要:集合类型。元素各不相同没有顺序 1.添加元素 sadd [keyName] [member1] [member2]... eg: sadd letters a b c 2.删除元素 srem [keyName] [member1] [member2]... eg srem letters a b 3
阅读全文
摘要:list通常用于存储有序队列 操作通常是push 和pop 1.向队列插入一个数(左) lpush nums 2 对于的右侧插入一个数 rpush nums 7 2.连续插入数字 lpush nums 5 6 9 0 注意:使用空格隔开,而不是逗号,是用逗号的话会看成一个整体 3.弹出一个数字 lp
阅读全文
摘要:hash类型主要用来存储对象,比如说存储一个汽车属性的值 1.连续赋值 hmset [keyName] [field1] [value1] [field2] [value2] ... eg: hmset car color "black" name "BMW" price 20000 2.连续获取值
阅读全文