【数据库】sql函数和多表关联查询
目录
一,SQL函数
1,聚合函数
1, count函数
2, AVG函数
3, SUM函数
4, MAX函数
5, MIN函数
6,数据分组——GROUP BY
7,限定组的结果,HAVING
8, HAVING与WHERE的区别
9,对结果集排序:order by
10,MySQL多行数据合并:GROUP_CONCAT
11,查询结果限定
2,数值型函数
3,字符串函数
示例:
4,日期和时间函数
示例
5,流程控制函数
1,IF(expr,v1,v2)
2,IFNULL(v1,v2)
3,CASE value WHEN
4,CASE WHEN
二,多表关联查询
1,inner join:内连接
2,leftjoin:左连接
3,rightjoin:右连接
4,自连接
5,交叉连接
一,SQL函数
1,聚合函数
聚合函数对一组值进行运算,并返回单个值。也叫分组函数。
COUNT(*|列名) 统计行数,*表示所有记录都不忽略,指定列名时会忽略null
AVG(数值类型列名) 平均值,忽略null
SUM (数值类型列名) 求和,忽略null
MAX(列名) 最大值,忽略null
MIN(列名) 最小值,忽略null
表t1的所有记录如下图所示:
1, count函数
COUNT(*|列名) 统计行数,*表示所有记录都不忽略,指定列名时会忽略null
(1)统计t1表有多少行
select count(*) from t1;
(2)统计t1表中的performance 列有多少行,不统计null
select count(performance) from t1;
2, AVG函数
AVG(数值类型列名) 平均值,忽略null
统计t1表中salary的平均值
select avg(salary) from t1;
3, SUM函数
SUM(数值类型列名) 求和,忽略null
统计t1表中salary的和
select sum(salary) from t1;
4, MAX函数
MAX(列名) 最大值,忽略null
MIN统计t1表中salary的最大值
select max(salary) from t1;
5, MIN函数
MIN(列名) 最小值,忽略null
统计t1表中salary的最小值
select min(salary) from t1;
6,数据分组——GROUP BY
GROUP BY子句的真正作用在于与各种聚合函数配合使用。它用来对查询出来的数据进行分组。
分组的含义是:把该列具有相同值的多条记录当成一组记录处理,最后只输出一条记录。
数据分组--GROUP BY
语法:SELECT column,group_function FROM table[WHEREcondition]
[GROUP BY group_by_expression]
查看dept表下的所有信息:
select * from dept;
查看表employee的所有信息:
select * from employee;
(1)每个部门的平均工资
select dept_id,avg(salary) from employee group by dept_id;
(2)出现在select后的字段都,它必须出现在GROUP BY子句中
select dept_id,d_name,avg(salary) from employee group by dept_id,d_name;
(3)出现在group by子句的字段可以不出现在select的列表当中
select dept_id,avg(salary) from employee group by dept_id,d_name;
7,限定组的结果,HAVING
限定组的结果:HAVING子句,HAVING子句用来对分组后的结果再进行条件过滤。
语法:SELECT column, group_function FROM table [WHEREcondition] [GROUP BY group_by_expression] [HAVING group_condition] [ORDER BY column];
(1)查询部门平均工资大于400的部门
select d_name,avg(salary) from employee group by d_name having avg(salary) >400;
8, HAVING与WHERE的区别
HAVING与WHERE的区别:WHERE是在分组前进行条件过滤, HAVING子句是在分组后进行条件过滤,WHERE子句中不能使用聚合函数,HAVING子句可以使用聚合函数。
(1)查找employee表中dept_id>1的d_name和avg(salary)
方法一:where
select d_name,avg(salary) from employee where dept_id>1 group by d_name;
方法二:having
select d_name,avg(salary) from employee group by d_name,dept_id having dept_id>1;
9,对结果集排序:order by
对结果集排序:查询语句执行的查询结果默认是按数据插入顺序排列,实际上可能需要按某列的值大小排列,按某列排序采用order by 列名[desc],列名…;设定排序列的时候可采用列名、列别名。
(1)查找employee表中dept_id>1的d_name和avg(salary),并对平均工资进行升序排序
select d_name,avg(salary) asalary from employee group by d_name,dept_id having deept_id>1 order by asalary;
(2)查找employee表中按照d_name分组的dept_id>1,avg(salary)>=300的d_name和avg(salary)并按升序排序
select d_name,avg(salary) asalary from employee where dept_id>1 group by d_name having asalary >=300 order by asalary;
10,MySQL多行数据合并:GROUP_CONCAT
(1)查找employee表中按照组dept_id,d_name分组的dept_id,d_name,avg(salary),e_id并把属于一组的e_id合并输出在一行
select dept_id,d_name,avg(salary),group_concat(e_id) from employee group by dept_id,d_name;
(2)查找employee表中的dept_id,d_name,avg(salary),e_id,name,并把属于一组的e_id与name合并输出在一行
select dept_id,d_name,avg(salary),group_concat(e_id),group_concat(name) from emplloyee
注意:使用 GROUP_CONCAT()函数必须对源数据进行分组,否则所有数据会被合并成一行
(3)查找dept表中的部门名称并将查到的多行结果合并一行
select group_concat(d_name) from dept;
11,查询结果限定
查询结果限定,在SELECT语句最后可以用LIMLT来限定查询结果返回的起始记录和总数量。MySQL特有。
语法:SELECT … LIMIToffset_start,row_count;
offset_start:第一个返回记录行的偏移量。默认为0。
row_count:要返回记录行的最大数目。
dept表有5行数据
select * from dept;
(1)显示表dep前t三行数据
select * from dept limit 3;
(2)从第3行开始,显示3行内容(n,m从n+1行开始,显示m行内容)
select * from dept limit 2,3;
2,数值型函数
函数名称 | 作用 |
ABS | 求绝对值 |
SQRT | 求平方根 |
POW 和 POWER | 两个函数的功能相同,返回参数的幂次方 |
MOD | 求余数 |
CEIL 和 CEILING | 两个函数功能相同,都是返回不小于参数的最小整数,即向上取整 |
FLOOR | 向下取整,返回值转化为一个BIGINT |
RAND | 生成一个0~1之间的随机数,传入整数参数时,用来产生重复序列 |
ROUND | 对所传参数进行四舍五入 |
SIGN | 返回参数的符号 |
3,字符串函数
函数名称 | 作用 |
LENGTH | 计算字符串长度函数,返回字符串的字节长度 |
CHAR_LENGTH | 计算字符串长度函数,返回字符串的字符长度,注意两者的区别 |
CONCAT | 合并字符串函数,返回结果为连接参数产生的字符串,参数可以是一个或多个 |
INSERT(str,pos,len,newstr) | 替换字符串函数 |
LOWER | 将字符串中的字母转换为小写 |
UPPER | 将字符串中的字母转换为大写 |
LEFT(str,len) | 从左侧字截取符串,返回字符串左边的若干个字符 |
RIGHT | 从右侧字截取符串,返回字符串右边的若干个字符 |
TRIM | 删除字符串左右两侧的空格 |
REPLACE(s,s1,s2) | 字符串替换函数,返回替换后的新字符串 |
SUBSTRING(s,n,len) | 截取字符串,返回从指定位置开始的指定长度的字符换 |
REVERSE | 字符串反转(逆序)函数,返回与原始字符串顺序相反的字符串 |
STRCMP(expr1,expr2) | 比较两个表达式的顺序。若expr1 小于 expr2 ,则返回 -1,0相等,1则相反 |
LOCATE(substr,str [,pos]) | 返回第一次出现子串的位置 |
INSTR(str,substr) | 返回第一次出现子串的位置 |
示例:
统计dept表中d_name的长度
select length(d_name) from dept;
4,日期和时间函数
函数名称 | 作用 |
CURDATE() CURRENT_DATE() CURRENT_DATE | 两个函数作用相同,返回当前系统的日期值 |
CURTIME CURRENT_TIME() CURRENT_TIME | 两个函数作用相同,返回当前系统的时间值 |
NOW() | 返回当前系统的日期和时间值 |
SYSDATE | 返回当前系统的日期和时间值 |
DATE | 获取指定日期时间的日期部分 |
TIME | 获取指定日期时间的时间部分 |
MONTH | 获取指定日期中的月份 |
MONTHNAME | 获取指定曰期对应的月份的英文名称 |
DAYNAME | 获取指定曰期对应的星期几的英文名称 |
YEAR | 获取年份,返回值范围是 1970〜2069 |
DAYOFWEEK | 获取指定日期对应的一周的索引位置值,也就是星期数,注意周日是开始日,为1 |
WEEK | 获取指定日期是一年中的第几周,返回值的范围是否为 0〜52 或 1 〜53 |
DAYOFYEAR | 获取指定曰期是一年中的第几天,返回值范围是1~366 |
DAYOFMONTH 和 DAY | 两个函数作用相同,获取指定日期是一个月中是第几天,返回值范围是1~31 |
DATEDIFF(expr1,expr2) | 返回两个日期之间的相差天数,如 SELECT DATEDIFF('2007-12-31 23:59:59','2007-12-30'); |
SEC_TO_TIME | 将秒数转换为时间,与TIME_TO_SEC 互为反函数 |
TIME_TO_SEC | 将时间参数转换为秒数,是指将传入的时间转换成距离当天00:00:00的秒数,00:00:00为基数,等于 0 秒 |
示例
查看当前时间:
select CURRENT_DATE;
5,流程控制函数
函数名称 | 作用 |
IF(expr,v1,v2) | 判断,流程控制,当expr = true时,或者为1时返回 v1,当expr = false、null 、0时返回v2 |
IFNULL(v1,v2) | 判断是否为空,如果 v1 不为 NULL,则 IFNULL 函数返回 v1,否则返回 v2 |
CASE | 搜索语句 |
1,IF(expr,v1,v2)
判断,流程控制,当expr = true时,或者为1时返回 v1,当expr = false、null 、0, ' '时返回v2
(1)使用IF()函数进行条件判断
如果表达式12>3成立,返回yes,否则返回no;
select if(12>3,'yes','no');
(2)分别显示emp表有奖金和没奖金的员工信息。
在数据库chap04下创建emp表,包含id int primary,name char(30) nut null,comm int三个字段
create table emp(id int primary key,name char(30) not null,comm int);
给表emp中插入数据
insert into emp values (1,'xioaming',2000),(2,'xiaohong',300),(3,'xiaohei',3200);
insert into emp (id,name) values (4,'xiaobai'),(5,'xiaolan');
查看表emp的所有信息
select * from emp;
分别显示emp表有奖金和没奖金的员工信息。
select id,name,if(comm is null,'没奖金','有奖金') '备注' from emp;
2,IFNULL(v1,v2)
IFNULL(v1,v2) 判断是否为空,如果 v1 不为 NULL,则 IFNULL 函数返回 v1,否则返回 v2
IFNULL() 函数语法格式为:IFNULL(expression, alt_value)
IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返回第二个参数的值,如果不为NULL 则返回第一个参数的值。
select ifnull(null,2);
3,CASE value WHEN
使用CASE value WHEN语句执行分支操作
语法:CASE <表达式>
WHEN<值1> THEN<操作>
WHEN<值2> THEN<操作>
...
ELSE<操作>
END
将 <表达式> 的值逐一和每个 when的 <值> 进行比较,如果跟某个<值>相等,则执行它后面的 <操作> ,如果所有 when的值都不匹配,则执行 else的操作,如果 when的值都不匹配,且没写 else,则会报错。
(1)判断输入的值是否为3,如果是3,输出three;
select case 3 when 1 then 'one' when 2 then 'two' when 3 then 'three' else 'other' end;
(2)
employee的所有信息如下
查找employee表下的dept_id,name,部门,当dept_id等于1,部门为boss,当dept_id等于2,部门为'finamce' ,3 ,'sale'; 4, 'tech'
select dept_id,name,case dept_id when 1 then 'boss' when 2 then 'finamce' when 3 then 'sale' when 4 then 'tech' end '部门' from employee;
4,CASE WHEN
使用CASE WHEN语句执行分支操作
判断条件放到when后面
select name,salary,casewhen salary<=300 then '[0,300]'when salary<=500 then '(300,500]'when salary<=1000 then '(500,1000]'end'salary level'from employee;
二,多表关联查询
1,inner join:内连接
inner join:内连接,只取得键值一致的部分,代表选择的是两个表键值交叉的部分。
语法如下:
SELECT列名1,列名2... FROM表1 INNER JOIN 表2 ON表1.列=表2.列 [and条件表达式 ][ WhERE条件语句 ] [ orderby列 [desc] ];
查看dept表的所有信息
select * from dept;
查看employee表的所有信息
select * from employee;
employee表中的dept_id是dept表中d_id的外键
(1)查找employee表dept_id中和dept表中d_id相等的所有记录
select * from employee e inner join dept d on e.dept_id=d.d_id;
(2)查找职员的部门
select e.name,d_name from employee e inner join dept d on e.dept_id=d.d_id;
(3)查找销售部门的职员姓名
select e.name,d_name from employee e inner join dept d on e.dept_id=d.d_id where d.d_name='sale';
(4)查找工资大于等于300的职员信息
方法一:
select e.name,d_name,e.salary from employee e inner join dept d on e.dept_id=d.d_id and salary>=300;
方法二:
select e.name,d_name,e.salary from employee e inner join dept d on e.dept_id=d.d_id where salary>=300;
2,leftjoin:左连接
leftjoin:左连接,代表选择的是前面一个表的全部。左连接是以左表为标准,只查询在左边表中存在的数据。语法如下:
SELECT列名1 FROM表1 LEFTOUTERJOIN表2 ON表1.列=表2.列 WhERE条件语句;
employee表中的所有记录如下所示:
select * from employee;
dept表中的所有记录如下所示
select * from dept;
显示所有员工的信息,包括没有部门的员工
select * from employee e left join dept d on e.dept_id=d.d_id;
显示所有部门的信息,包括没有员工的部门
select * from dept d left join employee e on e.dept_id=d.d_id;
工资大于等于300的信息
select * from employee e left join dept d on e.dept_id=d.d_id where salary>=300;
工资大于等于300的信息按升序排序
select * from employee e left join dept d on e.dept_id=d.d_id where salary>=300 order by salary;
3,rightjoin:右连接
3.rightjoin:右连接,代表选择的是后面一个表的全部。右连接将会以右边作为基准,进行检索。语法如下:
SELECT列名1 FROM表1 RIGHTOUTERJOIN表2 ON表1.列=表2.列 WhERE条件语句;
显示所有部门的信息,包括没有员工的部门
select * from employee e right join dept d on e.dept_id=d.d_id;
显示所有员工的信息,包括没有部门的员工
select * from dept d right join employee e on e.dept_id=d.d_id;
4,自连接
自连接,自连接顾名思义就是自己跟自己连接,参与连接的表都是同一张表。(通过给表取别名虚拟出)
查找比自己mgr岁数大的员工和mgr的姓名和年龄
(1)创建表t4
create table t4(name char(30),age int,mgr char(20));
(2)向表t4中插入数据:
insert into t4 values ('xiaoming',29,'xiao'),('xiaohong',26,'xiao'),('zhouyi',19,'zhou'),('xiao',28,'booss'),('zhou',30,'boss');
(3)查看t4表的所有信息
select * from t4;
(4)查找比自己mgr岁数大的员工和mgr的姓名和年龄(两张表之间的逗号也可以换为join)
select e.name,e.age,m.name mgr,m.age mgr_age from t4 e,t4 m where e.mgr=m.name and e.age > m.age;
5,交叉连接
交叉连接:不适用任何匹配条件。生成笛卡尔积
表t1的信息如下:
select * from t1;
表dept的信息如下:
select * from dept;
查询表t1与表table的交叉连接
select * from dept,t1;
相关文章:
【数据库】sql函数和多表关联查询
目录 一,SQL函数 1,聚合函数 1, count函数 2, AVG函数 3, SUM函数 4, MAX函数 5, MIN函数 6,数据分组——GROUP BY 7,限定组的结果,HAVING 8&#x…...
6-周赛332总结
6-周赛332总结 过了Q1和Q2,Q2知道用二分但是边界处理的不是很好,迷迷糊糊过的(手动再移动了下返回值…) Q3知道将子字符串的值取出来,将最短位置放在哈希表中,然后异或在哈希表中找值。但是我这个猪头脑袋…...
嵌入式Qt 开发一个音乐播放器
上篇文章:RK3568源码编译与交叉编译环境搭建,进行了OK3568开发板软件开发环境搭建,通过编译RK3568的源码,可以得到Qt开发的交叉编译相关工具。 本篇,就来在搭建好的软件开发中,进行Qt软件的开发测试。由于…...
2023秋招万得集团AI算法岗面经分享
本专栏分享 计算机小伙伴秋招春招找工作的面试经验和面试的详情知识点 专栏首页:秋招算法类面经分享 主要分享计算机算法类在面试互联网公司时候一些真实的经验 2022年 11.22下午AI算法岗面试 (1)一面35min 1、自我介绍 2、科研:长文本MRC...
RoI Transformer论文翻译详解
Learning RoI Transformer for Oriented Object Detection in Aerial Images 0.摘要 航空图像中的目标检测是计算机视觉中一个活跃而又具有挑战性的任务,因为它具有鸟瞰视角、高度复杂的背景和变化的物体外观。特别是在航空图像中检测密集的目标时,基于…...
Prometheus 自动发现监控AWS EC2实例
本文章简述对接自动发现AWS云EC2实例 前提环境: PromethuesGrafanaAWS IAM权限 涉及参考文档: AWS EC2Grafana 通用监控模板 一、IAM 用户创建 1、创建Prometheus 策略 策略规则: {"Version": "2012-10-17",&quo…...
从recat源码角度看setState流程
setState setState() 将对组件 state 的更改排入队列批量推迟更新,并通知 React 需要使用更新后的 state 重新渲染此组件及其子组件。其实setState实际上不是异步,只是代码执行顺序不同,有了异步的感觉。 使用方法 setState(stateChange | u…...
【Java|golang】1234. 替换子串得到平衡字符串---双指针
有一个只含有 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符,且长度为 n 的字符串。 假如在该字符串中,这四个字符都恰好出现 n/4 次,那么它就是一个「平衡字符串」。 给你一个这样的字符串 s,请通过「替换一个子串」的方式,…...
自监督表征学习方法——BYOL(Bootstrap Your Own Latent)
自监督表征学习方法——BYOL(Bootstrap Your Own Latent) 参考文献:《Bootstrap Your Own Latent A New Approach to Self-Supervised Learning》 1.前言背景 学习良好的图像表示是计算机视觉中的一个关键挑战,因为它允许对下游任务进行有效的训练。许…...
均衡负载集群(LBC)-1
均衡负载集群(LBC) 客户–>通过Internet—>负载调度器—>n台真实服务器 负载调度器: 软件:LVS;Nginx;Haproxy硬件:F5; LVS架构: 使用到C/S(B/S…...
WebSocket
关于WebSocket: WebSocket 协议在2008年诞生,2011年成为国际标准。现在所有浏览器都已经支持了。 WebSocket 的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话…...
GA-PEG-GA,Glutaric Acid-PEG-Glutaric Acid,戊二酸-聚乙二醇-戊二酸供应
英文名称:Glutaric Acid-PEG-Glutaric Acid,GA-PEG-GA 中文名称:戊二酸-聚乙二醇-戊二酸 GA-PEG-GA是一种线性双功能PEG羧酸试剂。PEG和羧基COOH之间存在C4酯键。PEG羧酸可用于与氨基反应,与NHS和DCC、EDC等肽偶联试剂反应。 P…...
使用sqlmap + burpsuite sql工具注入拿flag
使用sqlmap burpsuite sql工具注入拿flag 记录一下自己重新开始学习web安全之路③。 目标网站:http://mashang.eicp.vip:1651/7WOY59OBj74nTwKzs3aftsh1MDELK2cG/ 首先判断网站是否存在SQL注入漏洞 1.找交互点 发现只有url这一个交互点,搜索框和登录…...
替代AG9300|替代NCS8823|CS5260 Type-C转VGA视频转换方案
替代AG9300|替代NCS8823|CS5260 Type-C转VGA视频转换方案 CS5260是一款是一款实现USB TYPE-C到VGA视频转换的单片机解决方案转换器。CS5260支持USB Type-C显示端口交替模式,CS5260可以将视频和音频流从USB Type-C接口传输到VGA端口。在CS5260芯片中,显示…...
乐鑫特权隔离机制的 OTA 固件升级
固件空中升级 (OTA, Over-The-Air) 是任何联网设备的重要功能之一,支持开发人员通过远程更新固件,以发布新功能或修复错误。乐鑫特权隔离框架中包含两类应用程序:受保护的应用程序 (protected_app) 和用户应用程序 (user_app) ,这…...
C++数据结构 —— 二叉搜索树
目录 1.二叉搜索树的基本概念 1.1二叉搜索树的基本特征 2.二叉搜索树的实现 2.1数据的插入(迭代实现) 2.2数据的搜索(迭代实现) 2.3中序遍历(递归实现) 2.4数据的删除(迭代实现) 2.5数据的搜索(递归实现) 2.6数据的插入(递归实现) 2.7数据的删除(递归实现) 2.8类的完…...
Maven面试题及答案
1、Maven有哪些优点和缺点 优点: 1、简化项目依赖管理 2、方便与持续集成工具(Jenkins)整合 3、有助于多模块项目开发,比如一个模块开发好后发布到仓库,依赖该模块时可以直接从远程仓库更新,不用自己手动去编译 4、有很多插件&am…...
WebRTC系列-Qos系列之接收放RTX处理
文章目录 1. RTX详解1.1 RTX包头解析1.2 RTX包中的OSN2. RTX在WebRTC中处理2.1 组包2.2 解包2.3 发送及接收处理流程2.3.1 发送流程2.3.2 rtx标记的设置流程2.3.3 解析流程2.3.4 RTX解包在上一篇 WebRTC系列-Qos系列之接收NACK文章中分析了接收到nack后解析的主要流程。在WebR…...
国内能否炒伦敦金,2023国际十大正规伦敦金交易平台排名
在目前的投资市场环境中,现货黄金是一种屡见不鲜的投资选择,它依靠国际化的投资环境,成为了世界范围内投资者的重要选择对象。进行现货黄金投资,人们除了要认识市场发展基本现状之外,更要做好基本面和技术面分析工作&a…...
react路由 - react-router-dom
react路由 现代的前端应用大多都是 SPA(单页应用程序),也就是只有一个 HTML 页面的应用程序。因为它的用户体验更好、对服务器的压力更小,所以更受欢迎。为了有效的使用单个页面来管理原来多页面的功能,前端路由应运而…...
01-RTOS
对于裸机而言,对于RTOS而言即:对于裸机,打游戏意味着不能回消息 回消息意味着不能打游戏对于RTOS 打游戏和裸机的切换只需要一个时间片节拍 1ms 从宏观来看 就是同时进行的两件事(但要在这两件事情的优先级一样的情况下࿰…...
信息安全管理
信息安全管理信息安全管理信息安全风险管理信息安全管理体系应急响应与灾难恢复应急响应概况信息系统灾难修复灾难恢复相关技术信息安全管理 管理概念:组织、协调、控制的活动,核心过程的管理控制 管理对象和组成:包括人员在内相关资产&…...
深度学习tips
1、datasets_make函数中最后全部转化为numpy形式 datanp.array(data)否则会出现问题,比如数据是103216,经过trainloader生成tensor后(batch_size为30),发现生成的数据为: data.shape #(10,) data[0].shape…...
2023-2-13 刷题情况
替换子串得到平衡字符串 题目描述 有一个只含有 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符,且长度为 n 的字符串。 假如在该字符串中,这四个字符都恰好出现 n/4 次,那么它就是一个「平衡字符串」。 给你一个这样的字符串 s,请通过…...
[HSCSEC 2023] rev,pwn,crypto,Ancient-MISC部分
比赛后有讲解,没赶上,前20比赛完1小时提交WP,谁会大半夜的起来写WP。总的感觉pwn,crypto过于简单,rev有2个难的不会,其它不是我的方向都感觉过于难,一个都没作。revDECOMPILEONEOONE入门题,一个…...
SpringBoot 接入 Spark
本文主要介绍 SpringBoot 与 Spark 如何对接,具体使用可以参考文章 SpringBoot 使用 Spark pom 文件添加 maven 依赖 spark-core:spark 的核心库,如:SparkConfspark-sql:spark 的 sql 库,如:s…...
在线支付系列【23】支付宝开放平台产品介绍
有道无术,术尚可求,有术无道,止于术。 文章目录前言支付产品App 支付手机网站支付电脑网站支付新当面资金授权当面付营销产品营销活动送红包会员产品App 支付宝登录人脸认证信用产品芝麻 GO芝麻先享芝麻免押芝麻工作证安全产品交易安全防护其…...
Python绝对路径和相对路径详解
在介绍绝对路径和相对路径之前,先要了解一下什么是当前工作目录。什么是当前工作目录每个运行在计算机上的程序,都有一个“当前工作目录”(或 cwd)。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。注…...
基于多进程的并发编程
一:不同平台基于多进程并发编程的实现 1.Windows平台 参考博文:Windows 编程(多进程) 更多API: 1)waitForSingleObject:等待一个内核对象变为已通知状态 2)GetExitCodeProcess:获取…...
Flask入门(4):CBV和FBV
目录4.CBV和FBV4.1 继承 views.View4.2 继承 views.MethodView4.CBV和FBV 前面的例子中,都是基于视图函数构建视图(FBV),和Django一样,Flask也有基于类构建视图(CBV)的方法。这种方式用的不多&…...
局域网创建网站/有趣的软文
出版社链接:http://shop.oreilly.com/product/0636920044765.do 代码链接:https://github.com/oreillymedia/Learning-OpenCV-3_examples 前言: 本书目的:目前,4方面趋势使得图像处理成为一个发展迅速的领域1 人手一手…...
三五互联网站管理登录地址是多少/东莞有限公司seo
配置druid时,要把druid.propertites文件放到resources文件夹中 不然就会报“instream parameter is null”...
想学网站制作/seo搜索引擎优化课后答案
STM32Cube 串口DMA发送问题:只能运行一次,第二次返回状态为HAL_BUSY 解决办法: 这样就可以实现每次调用HAL_UART_Trasmit_DMA发送指定长度的数组。转载于:https://www.cnblogs.com/zq-Embedded-System/p/5925714.html...
网址关键词查询网站/网络营销的特征和功能
1.开篇介绍 在开始看本篇文章之前先允许我打断一下各位的兴致。其实这篇文章本来是没有打算加“开篇介绍”这一小节的,后来想想还是有必要反馈一下读者的意见。经过前三篇文章的详细讲解,我们基本上对LINQ框架的构成原理有了一个根本的认识,…...
网站建设方案 市场分析/一份完整的品牌策划方案
我们可以通过在命令行中对我们的 Beats 进行管理,比如我们可以启动 metric 几个模块,我们可以通过如下的命令来执行: ./metricbeat modules enable apache mysql 上面的命令启动 apache mysql 模块。我们也许觉得这个这样做很方便。但是如果…...
广安哪里有做网站的公司/温州网站建设
常用属性和方法 Navigate(string urlString):浏览urlString表示的网址 Navigate(System.Uri url):浏览url表示的网址 Navigate(string urlString, string targetFrameName, byte[] postData, string additionalHeaders): 浏览urlString表示的网址,并发送…...