
开发笔记
文章平均质量分 62
sueong
这个作者很懒,什么都没留下…
展开
-
mysql5.7以上的group by 内部排序
找出每个分组下最近一条时间的记录,同时还要进行sum操作,但是group by 只会匹配每个分组下的第一条数据(如果id自增的话,就是每个分组下最小的id),所以想到的子查询建个子表先排序再连起来,结果发现order by会在5.7版本的mysql的优化器会优化order by到外部排序,5.6的版本似乎可行,所以可以在子表中加distinct id,关闭这个特效,因为id肯定不会重复,所以确保了子表数据的完整性,也不会耽误我之后的sum操作。因为mysql优化器特定情况下会合并派生表。原创 2023-01-01 17:05:15 · 528 阅读 · 0 评论 -
find命令查找文件
Linux里利用find命令从根目录开始查找所有扩展名为 .log 的文本文件。find 目录 -选项 动作[-print -exec -ok …-type:根据文件类型进行搜索。l 符号连接(软连接)-type 类型参数。- name 文件名。原创 2022-11-15 17:41:20 · 687 阅读 · 0 评论 -
SQL复习
like字符匹配 1、_ :匹配一个字符 例如:查找姓张且名字为三个字的学生信息 select * from student where name like ‘张__’2、%:匹配0个或多个字符串 例如:查找姓张的学生的信息 select * from student where name like '张%3、[]匹配框中的任意一个字符 例如查找姓李、张、宋的学生信息 select * from student where name like ‘[张李宋]%’4、不匹配[]中的字符 例如找出除姓张、原创 2022-09-21 13:40:55 · 436 阅读 · 0 评论 -
git stash/git fetch/git rebase/git cherry pick/git reset
回到刚才执行gitstash的分支,执行gitstashpop,就会将最近一次藏起来的内容提取出来了。(注如果stash了好几次,要提取其中某一次的内容,可以使用````gitstashapply``命令)原因gitpull要更新代码时本地代码修改了需要先commit或stash但是不想commit就可以stash保证本地工作区干净。StashChanges相当于gitstash,将选中的变更文件“藏起来”,然后当前分支就“干净”了,可以切换到其他分支去了。.....................原创 2022-07-26 11:27:54 · 476 阅读 · 0 评论 -
vue3学习笔记
1vue介绍参考官网2属性绑定和事件绑定如果不使用vue就会改变dom层面数据使用vue后 mounted会在浏览器加载完成后 执行 是在数据层面上加的渲染结果以上就是数据驱动视图鼠标悬浮的信息v-bind:title="message"渲染结果用户响应v-on:click="方法名"3数据双向绑定 v-model<input v-model=’'message">用户名 密码响应 双向绑定4 条件循环 v-if=‘变量名’效果是点原创 2022-03-27 14:11:12 · 1071 阅读 · 0 评论 -
Error: listen EADDRINUSE: address already in use :::3000 ,windows 3000端口被占用
Error: listen EADDRINUSE: address already in use :::3000windows 3000端口被占用cmdnetstat -aon | findstr 30007588是pid号taskkill /pid 7588 -t -f原创 2022-03-21 16:25:53 · 379 阅读 · 0 评论 -
一个分支强制替代另一个分支
先将新旧分支都检出到本地查看分支git branch -al如果不在旧分支则切换分支git checkout 旧分支git reset --hard 新分支git push -f 推送到远端原创 2022-03-15 18:39:37 · 522 阅读 · 0 评论 -
实习笔记0708 https协议/ django中间件/接口测试/内网与外网/域名系统DNS
1 https协议2 django中间件3 复习 postman 接口测试4 127.0.0.1和0.0.0.0和localhost: 区别127.0.0.1 是一个环回地址。并不表示“本机”。0.0.0.0才是真正表示“本网络中的本机”。在实际应用中,一般我们在服务端绑定端口的时候可以选择绑定到0.0.0.0,这样我的服务访问方就可以通过我的多个ip地址访问我的服务。比如我有一台服务器,一个外放地址A,一个内网地址B,如果我绑定的端口指定了0.0.0.0,那么通过内网地址或外网地址都可以访问原创 2021-08-10 16:59:36 · 325 阅读 · 0 评论 -
解决del找不到关键词‘province‘的问题和思想
内存:我认为这个词翻译得不是很准确,产生了歧义。本来是要表示“内部存储器”的意思,现在已经和“内置存储器”的概念混淆了。很多非专业人士搞不清楚内存和外存的区别,更不明白什么虚拟内存。百度词条中一度对内存做了十分错误的解释,更是引起很多困惑。内存是电脑的一个硬件组成部分。从单片机的组成我们可以看到,CPU、内存和输入输出接口,就组成一个完整的电脑,其他统统属于外设。内存是可以被CPU通过总线进行操作的,也就是与CPU之间有总线相连接的。电脑所有的输入输出,都是要从内存来实现的。内存包括只读内存ROM和读写内原创 2021-08-10 16:55:20 · 331 阅读 · 0 评论 -
ModuleNotFoundError: No module named ‘Crypto.PublicKey‘
pip install pycryptodome原创 2021-08-02 18:21:58 · 787 阅读 · 0 评论 -
postman404报错解决方案
错误报号为404,并且进不去后台代码,一般都是url地址错了,或者参数的个数没有对应上,或者参数名写错,参数类型错误报404错误时一般跟这些没关系,我们首先应该检查是不是配置出了问题,导致找不到这个服务。我的问题是写完了接口没有在对应模块下的spring-dubbo(项目基于dubbo框架)文件中配置路径。找到对应的spring-dubbo,可以直接复制之前的路径,然后把新写好的接口配置进去(Rest层我的命名是大写,但是我这里必须小写,不然会报错)如果你的配置是好的,但还是报404错误,检查你的测原创 2021-07-31 11:36:01 · 7827 阅读 · 0 评论 -
‘复杂变简单‘的代码例子
provice = [{ "name": "北京市", "id": "110000000000"}, { "name": "天津市", "id": "120000000000"}, { "name": "河北省", "id": "130000000000"}, { "name": "山西省", "id": "140000000000"}, { "name": "内蒙古自治区", "id": "150000000000"原创 2021-07-30 15:11:25 · 169 阅读 · 0 评论 -
宽表和窄表
考虑这样的一个问题,一个公司有这样的一个需求:设计销售领域的订单事实表,该事实表应该包含哪些维度和度量?事实表和维表该分别如何去设计?好了,我们把关键信息拿出来,首先我们要有维度包括:销售员、销售员所属部门、下订单的时间;度量:销售量;那么,订单事实表,其实就是一个商品销售的清单;依照这个思路,我们建立的第一个模型可能是以下这样的:单单看上去,貌似是符合我们的问题的需要,而且符合数据库的范式设计:没有冗余字段;但是情况真的就是这样吗?答案是否定的,确实对于一般的OLTP系统而言这样的表设计确实转载 2021-07-21 18:35:57 · 224 阅读 · 0 评论 -
Python MongoDB--PyMongo
创建一个数据库创建数据库需要使用 MongoClient 对象,并且指定连接的 URL 地址和要创建的数据库名。如下实例中,我们创建的数据库 runoobdb :实例#!/usr/bin/python3 import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/")mydb = myclient["runoobdb"]判断数据库是否已存在我们可以读取 MongoDB 中的所有数据库,并判断指定的数原创 2021-07-21 16:55:32 · 96 阅读 · 0 评论 -
python 消息队列、异步分布式
一.消息队列消息队列:是在消息的传输过程中保存消息的容器。消息队列最经典的用法就是消费者和生成者之间通过消息管道来传递消息,消费者和生成者是不同的进程。生产者往管道中写消息,消费者从管道中读消息。操作系统提供了很多机制来实现进程间的通信 ,multiprocessing模块就提供了Queue和Pipe两种方法来实现。其中P指producer,即生产者;C指consumer,即消费者。中间的红色表示消息队列,实例中表现为HELLO队列。1.生产消费实例 Queue 单向进行,即生产者只进行发消息,转载 2021-07-21 14:40:19 · 736 阅读 · 0 评论 -
Python 实例方法、类方法、静态方法的区别与作用
首先,两者本质上的区别是:静态方法是在类中使用staitc修饰的方法,在类定义的时候已经被装载和分配。而非静态方法是不加static关键字的方法,在类定义时没有占用内存,只有在类被实例化成对象时,对象调用该方法才被分配内存。 其次,静态方法中只能调用静态成员或者方法,不能调用非静态方法或者非静态成员,而非静态方法既可以调用静态成员或者方法又可以调用其他的非静态成员或者方法。例子1:静态方法的Main方法访问类中的非静态成员方法。class Test{public int sum(int a,i原创 2021-07-21 11:31:19 · 259 阅读 · 0 评论 -
python的f-string 格式化字符串
f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法,该方法源于PEP 498 – Literal String Interpolation,主要目的是使格式化字符串的操作更加简便。f-string在形式上是以 f 或 F 修饰符引领的字符串(f’xxx’ 或 F’xxx’),以大括号 {} 标明被替换的字段;f-string在本质上并不是字符串常量,而是一个在运行时运算求值的表达式:While other str转载 2021-07-15 14:37:30 · 310 阅读 · 0 评论 -
python装饰器
首先我们来理解下 Python 中的函数:def hi(name="yasoob"): return "hi " + name print(hi())# output: 'hi yasoob' # 我们甚至可以将一个函数赋值给一个变量,比如greet = hi# 我们这里没有在使用小括号,因为我们并不是在调用hi函数# 而是在将它放在greet变量里头。我们尝试运行下这个 print(greet())# output: 'hi yasoob' # 如果我们删掉旧的hi函数转载 2021-07-14 20:58:57 · 56 阅读 · 0 评论 -
python hashlib模块
一、hashlib的基本概念1、什么叫hash:hash是一种算法(不同的hash算法只是复杂度不一样)(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法),该算法接受传入的内容,经过运算得到一串hash值2、hash值的特点是(hash值/产品有三大特性:):2.1 只要传入的内容一样,得到的hash值必然一样=====>要用明文传输密码文件完整性校验2.2 不能由hash值反解成内容=======》把密原创 2021-07-14 16:36:53 · 180 阅读 · 0 评论 -
MongoEngine MongoDB 的 ORM 库
pymongo的弊端pymongo来操作mongodb数据库,但是直接把数据库的操作代码写在脚本中,使得应用代码的耦合性太强,不利于代码的优化管理mongoengine是一个对象文档映射器(ODM),相当于基于sql对象关系映射器(ORM)安装mongoenginepip install mongoengine事先声明一个继承mongoengine.document的类复制代码from mongoengine import *connect(‘test’, host=‘localhost’,原创 2021-07-13 15:29:59 · 548 阅读 · 0 评论 -
python的self
参考原文链接:https://blog.youkuaiyun.com/xrinosvip/article/details/89647884在Python类中规定,函数的第一个参数是实例对象本身,并且约定俗成,把其名字写为self。其作用相当于java中的this,表示当前类的对象,可以调用当前类中的属性和方法。class是面向对象的设计思想,instance(也即是 object,对象)是根据 class 创建的一个类(class)应该包含 数据 和 操作数据的方法,通俗来讲就是 属性 和 函数(即调用方法)类转载 2021-07-08 18:32:03 · 183 阅读 · 0 评论 -
软件版本号说明
1.版本命名规范软件版本号有四部分组成,第一部分为主版本号,第二部分为次版本号,第三部分为修订版本号,第四部分为日期版本号加希腊字母版本号,希腊字母版本号共有五种,分别为base、alpha、beta 、RC 、 release2.软件版本阶段说明· Base:此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是 页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构。· Alpha :软件的初级版本,表示该软件在此阶段以实现软件功能为主,通常只在软件开发者 内部交流,原创 2021-07-06 16:48:58 · 1686 阅读 · 0 评论 -
git学习
常用的Linux命令平时一定要多使用这些基础的命令!1)、cd : 改变目录。2)、cd . . 回退到上一个目录,直接cd进入默认目录3)、pwd : 显示当前所在的目录路径。4)、ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。6)、rm: 删除一个文件, rm index.js 就会把index.js文件删除。7)、mkdir:原创 2021-07-05 17:21:10 · 158 阅读 · 0 评论 -
常见http代码
当用户或者是搜索引擎访问你的网站的时候,服务器会针对请求返回相应的浏览页面,这样搜索引擎或者是用户就会得到想要的网页。但是有的时候,用户会在浏览器页面遇到HTTP错误,导致网页不能正常加载。HTTP错误是针对游览器无法连接到服务器而增加出来的错误提示。引导并告诉浏览者该页是哪里出了问题。那么,用户经常会遇到哪些类型的HTTP错误呢?以下便列举了常见的HTTP错误以及产生的原因。1.404错误404 错误是用户最常见的页面错误, 一般会显示你访问的资源没常见HTTP错误介绍有找到(404 Not Foun原创 2021-07-01 11:44:04 · 2416 阅读 · 0 评论