当前位置: 首页 > news >正文

MySQL(常用函数、多表查询)

文章目录

    • 1.数据库函数
        • 1.count函数
          • 案例
          • 答案
          • count(*)与count(列)的区别
        • 2.sum函数
          • 案例
          • 答案
        • 3.avg函数
          • 案例
          • 答案
        • 4.max/min函数
          • 案例
          • 答案
        • 5.group by 分组统计
          • 案例
          • 答案
        • 6.字符串相关函数
          • 演示
          • 练习
        • 7.数学相关函数
          • 演示
        • 8.日期相关函数
          • 演示
        • 9.加密函数
          • 演示
        • 10.流程控制函数
          • 演示
    • 2.查询增强
        • 增强一
          • 案例
        • 增强二 order by
          • 案例
        • 增强三 分页查询
          • 案例
          • 求第几页的公式是
          • 练习
        • 增强四 group by
          • 案例
        • 增强五 数据分组总结
          • 案例
          • group by 细节
    • 3.多表查询
        • 1.笛卡尔积
          • 细节
          • 案例
        • 2.多表查询
          • 案例
        • 3.自连接
          • 案例
        • 4.多行子查询
          • 案例一
          • 案例二
        • 4.子查询临时表(非常管用)
        • 5.all和any操作符
          • all操作符案例
          • any操作符案例
        • 6.多列子查询
          • 案例一
          • 案例二
        • 7.子查询练习题
          • 练习一
          • 练习二
          • 练习三
        • 8.表复制和去重
          • 1.表的复制
          • 2.自我复制
          • 3.复制表结构
          • 4.去重
        • 9.合并查询
          • union all
          • union
        • 10.外连接
          • 左外连接
          • 右外连接
          • 练习
    • 4.查询与连接的WHERE区别

1.数据库函数

1.count函数

image-20240116092118888

案例

image-20240116092108309

答案
-- 统计一个班级共有多少学生
SELECT COUNT(*) FROM student;
-- 统计数学成绩大于90的有多少个
SELECT COUNT(*) FROM student WHERE math > 90;
-- 统计总分大于250的人数有多少人
SELECT COUNT(*) FROM STUDENT WHERE (MATH + CHINESE + ENGLISH) > 250;
count(*)与count(列)的区别
  1. count(*)会返回满足条件记录的行数
  2. count(列)会统计满足条件的某列有多少行但是会排除null
2.sum函数

image-20240116093428849

案例

image-20240116094245465

答案
-- 统计一个班级数学总成绩
SELECT SUM(MATH) FROM student;
-- 统计一个班级,语文,英语,数学各科的总成绩
SELECT SUM(CHINESE), SUM(ENGLISH), SUM(MATH) FROM student; 
-- 统计一个班级语文,英语,数学的成绩总和
SELECT SUM(CHINESE) + SUM(ENGLISH) + SUM(MATH) FROM student;
-- 统计一个班级语文成绩平均分
SELECT SUM(CHINESE) / COUNT(*) FROM student;
3.avg函数

image-20240116094408135

案例

image-20240116094401257

答案
-- 求一个班级的数学平均分
SELECT AVG(MATH) FROM STUDENT;
-- 求一个班级总分平均分
SELECT AVG(MATH + CHINESE + ENGLISH) FROM STUDENT;
4.max/min函数

image-20240116094826161

案例

image-20240116094836948

答案
-- 求班级最高分和最低分
SELECT MAX(MATH + CHINESE + ENGLISH) FROM STUDENT;
SELECT MIN(MATH + CHINESE + ENGLISH) FROM STUDENT;
5.group by 分组统计

image-20240116095328808

案例

image-20240116101836314

答案
-- 显示每个部门的平均工资和最高工资
SELECT AVG(SAL), MAX(SAL),DEPTNO FROM EMP GROUP BY DEPTNO;
-- 显示每个部门的每种岗位的平均工资和最低工资
SELECT AVG(SAL), MIN(SAL),DEPTNO,JOB FROM EMP GROUP BY DEPTNO, JOB;
-- 显示平均工资低于2000的部门号和他的平均工资,别名
SELECT DEPTNO, AVG(SAL) AS 平均工资 FROM EMP GROUP BY DEPTNO HAVING 平均工资 < 2000; 
6.字符串相关函数

image-20240116101923971

演示
-- 返回字符串的字符集
SELECT CHARSET(ENAME) FROM EMP;
-- 连接子串将多个列拼成一列
SELECT CONCAT(ENAME,'工作是',JOB) FROM EMP;
-- INSTR (string, substring) 返回substring在string中出现的位置,没有返回0
SELECT INSTR('hanshunping', 'ping') FROM DUAL;
-- 转换成大写
SELECT UCASE(ENAME) FROM EMP;
-- 转换成小写
SELECT LCASE(ENAME) FROM EMP;
-- LEFT(string2, length) 从string2中的左边起取length个字符
SELECT LEFT(ENAME, 3) FROM EMP;
-- LENGTH(str) str的长度,按照字节
SELECT LENGTH('孙显圣') FROM EMP;
-- REPLACE(str,from_str,to_str) 将str列的from_str,替换为to_str
SELECT REPLACE(JOB,'MANAGER','经理') FROM EMP;
-- STRCMP(expr1,expr2) 逐个字符比较两字符串大小
SELECT STRCMP('HSP','AHP') FROM DUAL;
-- SUBSTRING(str FROM pos FOR len) 从str的pos开始(从1开始)取出len个字符
SELECT SUBSTRING(ENAME, 1, 2) FROM EMP;
-- 去除空格
SELECT LTRIM('  韩顺平教育') FROM DUAL;
SELECT RTRIM('韩顺平教育 ') FROM DUAL;
练习

image-20240116104853698

-- 将第一个 字符取出来然后转为小写,与剩下的字符拼接
SELECT CONCAT(LCASE(SUBSTRING(ENAME, 1, 1)),SUBSTRING(ENAME, 2,LENGTH(ENAME) - 1))  FROM EMP; 
7.数学相关函数

image-20240116105708293

演示
-- ABS(X) 绝对值
SELECT ABS(-10) FROM DUAL;
-- BIN(N) 十进制转2进制
SELECT BIN(10) FROM DUAL;
-- CEILING(X) 向上取整
SELECT CEILING(10.3) FROM DUAL;
-- CONV(N,from_base,to_base) 进制转换
SELECT CONV(10,10,2) FROM DUAL;
-- FLOOR(X) 向下取整
SELECT FLOOR(10.3) FROM DUAL;
-- FORMAT(X,D) 保留小数位数
SELECT FORMAT(10.3234,2) FROM DUAL;
-- HEX(N_or_S) 转16进制
SELECT HEX(100) FROM DUAL; 
-- LEAST(value1,value2,...) 求最小值
SELECT LEAST(10,2,3) FROM DUAL;
-- MOD(N,M) 取余
SELECT MOD(5,2) FROM DUAL;
-- RAND() 取随机数,0到1,如果是带参数的则每次取出来的就是相同的随机数
SELECT RAND() FROM DUAL;
SELECT RAND(3) FROM DUAL;
8.日期相关函数

image-20240116133545045

演示
-- 显示所有新闻信息,发布时间只显示日期,不用显示时间
SELECT id, content, DATE(send_time) FROM mes;
-- 查询在10分钟内发布的帖子
SELECT * FROM mes WHERE DATE_ADD(send_time, INTERVAL 10 MINUTE) >= NOW();
SELECT * FROM mes WHERE DATE_SUB(NOW(),INTERVAL 10 MINUTE) <= send_time;
-- 求出2011-11-11 和 1990-1-1相差多少天
SELECT DATEDIFF('2011-11-11','1990-1-1') FROM DUAL;
-- 求出你活了多少天
SELECT DATEDIFF(CURRENT_DATE,'2002-12-8') FROM DUAL;
-- 如果能活80岁,还能活几天
SELECT  DATEDIFF(DATE_ADD('2002-12-8',INTERVAL 80 YEAR),CURRENT_DATE) FROM DUAL;
-- 返回1970年到现在的秒数
SELECT UNIX_TIMESTAMP() FROM DUAL;
-- 把unix_timestamp时间戳转换成指定格式的日期
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H-%i-%s') FROM DUAL;
-- 返回指定的年月日
SELECT YEAR('2023-12-8'), MONTH('2023-12-8'),DAY('2023-12-8') FROM DUAL;
9.加密函数

image-20240116144111098

演示
-- 查询用户
SELECT USER() FROM DUAL;
-- 查询当前使用数据库名称
SELECT DATABASE() FROM DUAL;
-- 为字符串算出一个MD5加密的字符串
SELECT MD5('SXS') FROM DUAL;
-- 演示在数据库中将密码使用md5加密并且查询
CREATE TABLE `user` (id INT,`name` VARCHAR(32) NOT NULL DEFAULT '',pwd CHAR(32) NOT NULL DEFAULT ''
)
-- 插入信息
INSERT INTO USER VALUES(1, 'root', MD5('123456'))
-- 查询MD5加密之后的数据
SELECT * FROM user WHERE name = 'root' AND pwd = MD5('123456')
10.流程控制函数

image-20240116145956987

演示
-- 查询emp表,如果comm是null,显示0.0,
SELECT ENAME, IF(COMM IS NULL, 0.0, COMM) FROM EMP;
SELECT ENAME, IFNULL(COMM,0.0) FROM EMP;
-- 如果emp表的job是clerk,则显示是职员,如果是manager则显示是经理,如果是saleman则显示销售人员
SELECT ename, (SELECT CASE WHEN job = 'CLERK' THEN '职员'WHEN job = 'MANAGER' THEN '经理'WHEN job = 'SALESMAN' THEN '销售人员'ELSE job END) FROM emp;

2.查询增强

增强一

image-20240116153613006

案例
-- 在mysql中,日期类型可以直接比较,但是格式要相同
-- 查询1992.1.1之后入职的员工
SELECT * FROM EMP WHERE HIREDATE > '1992-01-01';
-- 显示首字符为S的员工姓名和工资
SELECT ename, sal FROM emp WHERE ename LIKE 'S%';
-- 显示第三个字符为大写的O的所有员工的姓名和薪资
SELECT ename, sal FROM emp WHERE ename LIKE '__O%';
-- 显示没有上级的雇员的情况
SELECT * FROM emp WHERE mgr IS NULL;
-- 查询表结构
DESC emp;
增强二 order by

image-20240116155047597

案例
-- 按照工资从低到高的顺序显示雇员的信息
SELECT * FROM emp ORDER BY sal 
-- 按照部门号升序而雇员的工资降序排列,显示雇员信息
SELECT * FROM empORDER BY deptno , sal DESC;
增强三 分页查询

image-20240116155829604

案例
-- 按雇员的id升序取出,每页显示3条记录,请分别显示第1页,第2页,第3页
-- 第一页
SELECT * FROM emp 
ORDER BY empno ASC
LIMIT 0, 3
-- 第二页
SELECT * FROM emp 
ORDER BY empno ASC
LIMIT 3, 3
-- 第三页
SELECT * FROM emp 
ORDER BY empno ASC
LIMIT 6, 3
求第几页的公式是

每页显示记录数 * (第几页 - 1),每页显示记录数

练习

image-20240116161342779

-- 第三页
SELECT * FROM EMP 
ORDER BY EMPNO DESC
LIMIT 10, 5
-- 第五页
SELECT * FROM EMP 
ORDER BY EMPNO DESC
LIMIT 20, 5
增强四 group by
案例

image-20240116161749041

-- 显示每种岗位的雇员总数、平均工资
SELECT job,COUNT(*), AVG(SAL)
FROM EMP
GROUP BY job;-- 显示雇员总数,以及获得补助的雇员数
SELECT COUNT(*),COUNT(COMM)
FROM EMP;
-- 没有获得补助的雇员数
SELECT COUNT(IF(COMM IS NULL,1,NULL))
FROM EMP-- 显示管理者的总人数
SELECT  COUNT(DISTINCT MGR)
FROM EMP-- 显示雇员工资的最大差额
SELECT MAX(SAL) - MIN(SAL)
FROM EMP
增强五 数据分组总结

image-20240116163731207

image-20240116163720593

案例

image-20240116163743973

group by 细节

HAVING 子句通常用于筛选聚合函数(如 AVG、SUM、COUNT 等)的结果。它不应直接用于筛选单个行的数据

并且select只能是group by中的元素或者被聚合函数包裹的元素

SELECT deptno, AVG(SAL) AS avg_total
FROM emp
-- 这里还可以添加where筛选单个子句
GROUP BY DEPTNO
HAVING avg_total > 1000
ORDER BY avg_total DESC
LIMIT 0,2;

3.多表查询

1.笛卡尔积

image-20240116170657386

细节
  1. 在两个表默认连接条件下会出现笛卡尔积
  2. 笛卡尔积就是将第一张表的一条记录与第二张表的所有记录依次连接
  3. 笛卡尔积生成的记录条数 = 第一张表的记录条数 * 第二张表的记录条数
  4. 多表查询的条件不能少于表的个数 - 1否则就会出现笛卡尔积
  5. 连接的条件一般是一个表的外码和另一个表的主码连接,这样生成的记录条数就是第一个表的记录条数
案例
-- 查出雇员名,雇员工资,以及所在部门的名字,还有部门编号
-- 注意部门编号是有两个表的虽然一样,但是也要指明哪个表
SELECT ename, sal, dname,emp.deptno
FROM EMP, DEPT
WHERE EMP.deptno = DEPT.deptno

image-20240116171529238

2.多表查询
案例

image-20240116181911401

-- 显示部门号为10的部门名,员工名和工资
SELECT dname, ename, sal
FROM EMP, DEPT
WHERE EMP.deptno =DEPT.deptno AND DEPt.deptno = 10-- 显示各个员工的姓名,工资以及工资的级别
SELECT ename, sal, grade
FROM emp, salgrade
WHERE sal BETWEEN losal AND hisal
3.自连接

image-20240116182026266

案例

image-20240116182847392

-- 显示员工名字以及他上级的名字,必须使用别名来进行自连接
SELECT worker.ename, boss.ename
FROM emp worker, emp boss 
WHERE worker.mgr = boss.empno
4.多行子查询

image-20240116183010079

案例一

image-20240116185156918

-- 显示与SMITH同一部门的所有员工
-- 先得到SMITH的部门编号,然后将其当做子查询
SELECT *
FROM emp
WHERE DEPTNO IN (SELECT DEPTNOFROM empWHERE ename = 'SMITH'
)
案例二

image-20240116183021092

-- 查询和部门10的工作相同的雇员的名字,岗位,工资,部门号,但是不含10自己的SELECT ename, job, sal, deptno
FROM emp
WHERE job IN (
-- 查询部门10的工作SELECT jobFROM empWHERE deptno = 10
) AND ename NOT IN (
-- 查询部门10的名字SELECT enameFROM empWHERE deptno = 10
)
-- 或者
SELECT ename, job, sal, deptno
FROM emp
WHERE job IN (
-- 查询部门10的工作SELECT jobFROM empWHERE deptno = 10
) AND deptno <> 10
-- <>是不等号
4.子查询临时表(非常管用)

image-20240116185312830

SELECT goods_id, temp.cat_id, goods_name, shop_price
FROM (-- 查出id分组中最高的价钱,并将其当做一个临时表SELECT cat_id, MAX(shop_price) as maxFROM ecs_goodsGROUP BY cat_id
) temp, ecs_goods
WHERE temp.cat_id = ecs_goods.cat_id AND temp.max = ecs_goods.shop_price
-- 连接条件是临时表中的id对应原表中的id,临时表中的最大值,对应原表中的最大值
5.all和any操作符
all操作符案例

image-20240116192927107

-- 显示工资比部门30的所有员工的工资都高的员工的姓名、工资和部门号
SELECT ename, sal, deptno
FROM emp
WHERE sal > all(-- 子查询查出部门30所有员工工资SELECT sal FROM empWHERE deptno = 30
)
any操作符案例

image-20240116193138514

-- 显示工资比部门30的其中一名员工的工资都高的员工的姓名、工资和部门号
SELECT ename, sal, deptno
FROM emp
WHERE sal > ANY(-- 子查询查出部门30所有员工工资SELECT sal FROM empWHERE deptno = 30
)
6.多列子查询

image-20240116193338320

案例一

image-20240116194210594

-- 查询与smith的部门和岗位完全相同的所有雇员并且不包含smith本人
SELECT *
FROM emp
-- 把要查询的元素也用括号括起来
WHERE (deptno, job) = (-- 子查询:查询smith的部门和岗位SELECT deptno, jobFROM empWHERE ename = 'SMITH'
) AND ename <> 'SMITH'
案例二

image-20240116194220339

-- 主查询:查询和宋江的数学,英语,语文,成绩完全相同的学生
SELECT *
FROM student
WHERE (math, english, chinese) = (-- 子查询:宋江的数学,英语,语文,成绩SELECT math, english, chineseFROM studentWHERE `name` = '宋江'
)
7.子查询练习题
练习一

image-20240116194650410

-- 子查询当做临时表使用,查询每个部门工资高于本部门平均工资的人
SELECT *
FROM (-- 子查询:按照部门分组,求出本部门的平均工资SELECT deptno, AVG(sal) as avgsalFROM empGROUP BY deptno
) temp, emp
WHERE temp.deptno = emp.deptno AND emp.sal > temp.avgsal 
练习二

image-20240116195615913

-- 查找每个部门工资最高的人的详细资料
SELECT *
FROM (-- 子查询:按照部门分组,查找到每组最高的工资SELECT deptno, MAX(sal) as maxFROM empGROUP BY deptno
) temp, emp
WHERE temp.deptno = emp.deptno AND temp.max = emp.sal
练习三

image-20240116200317407

-- 注意:表名.*可以显示这个表的所有列
SELECT temp.*, dname, loc
FROM (-- 子查询:根据部门进行分组,计算人员数量SELECT deptno, COUNT(*) as numFROM empGROUP BY deptno
)temp, dept
WHERE temp.deptno = dept.deptno
8.表复制和去重
1.表的复制
CREATE TABLE my_tab01(id INT,name VARCHAR(32),sal DOUBLE,job VARCHAR(32),deptno INT
);
SELECT * FROM my_tab01-- 将emp表的数据复制到my_tab01中去
INSERT INTO my_tab01(id, name, sal, job, deptno)SELECT empno, ename, sal, job, deptno FROM emp; 
2.自我复制

image-20240116202241248

-- 自我复制
INSERT INTO my_tab01SELECT * FROM my_tab01
3.复制表结构
-- 复制表结构来创建一个表
CREATE TABLE temp LIKE salgrade
4.去重
-- my_tab01是一个具有重复数据的表
-- 1.创建一个临时表temp其结构与my_tab01一样
CREATE TABLE temp like my_tab01
-- 2.将my_tab01的数据使用distinct处理并复制到表temp中
INSERT INTO tempSELECT DISTINCT * FROM my_tab01
-- 3.把my_tab01的数据删除
DELETE FROM my_tab01
-- 4.把temp表的数据复制到my_tab01中去
INSERT INTO my_tab01SELECT * FROM temp
-- 删除临时表
DROP TABLE temp
9.合并查询
union all

image-20240116205149236

union

image-20240116205228353

10.外连接

image-20240116210128659

image-20240117090520072

左外连接
-- 创建两个表,并实现外连接
CREATE TABLE STU (ID INT,NAME VARCHAR(32)
)CREATE TABLE EXAM(ID INT,GRADE INT
);
-- 左外连接
SELECT *
FROM EXAM LEFT JOIN STU
ON EXAM.ID = STU.ID

image-20240117092048289

右外连接
-- 右外连接
SELECT * 
FROM EXAM RIGHT JOIN STU
ON EXAM.ID = STU.ID

image-20240117092105972

练习

image-20240117092934692

-- 列出部门名称和这些部门的员工信息(名字和工作),同时列出那些没有员工的部门名
-- 左外连接
SELECT DNAME, ENAME,JOB
FROM DEPT LEFT JOIN EMP
ON DEPT.deptno = EMP.deptno
-- 右外连接
SELECT DNAME, ENAME,JOB
FROM EMP RIGHT JOIN DEPT
ON EMP.deptno = DEPT.deptno

4.查询与连接的WHERE区别

image-20240117112635523

相关文章:

MySQL(常用函数、多表查询)

文章目录 1.数据库函数1.count函数案例答案count&#xff08;*&#xff09;与count&#xff08;列&#xff09;的区别 2.sum函数案例答案 3.avg函数案例答案 4.max/min函数案例答案 5.group by 分组统计案例答案 6.字符串相关函数演示练习 7.数学相关函数演示 8.日期相关函数演…...

【Pt】马灯贴图绘制过程 01-制作基础色

目录 一、导入模型并烘焙 二、制作基础底漆 &#xff08;1&#xff09;底漆层 &#xff08;2&#xff09;水痕层 &#xff08;3&#xff09;指纹层 一、导入模型并烘焙 1. 导入模型&#xff0c;马灯模型如下所示 2. 在纹理集设置中点击“烘焙模型贴图” 设置输出大小为…...

TransmittableThreadLocal 问题杂记

0、前言 TransmittableThreadLocal&#xff0c;简称 TTL&#xff0c;是阿里巴巴开源的一个Java库&#xff0c;它能够实现ThreadLocal在多线程间的值传递&#xff0c;适用于使用线程池、异步调用等需要线程切换的场景&#xff0c;解决了ThreadLocal在使用父子线程、线程池时不能…...

Linux之 线程池 | 单例模式的线程安全问题 | 其他锁

目录 一、线程池 1、线程池 2、线程池代码 3、线程池的应用场景 二、单例模式的线程安全问题 1、线程池的单例模式 2、线程安全问题 三、其他锁 一、线程池 1、线程池 线程池是一种线程使用模式。线程池里面可以维护一些线程。 为什么要有线程池&#xff1f; 因为在…...

Composer常见错误及解决方案

Composer常见错误及解决方案 Composer是PHP的依赖管理工具&#xff0c;它使得在PHP项目中管理和安装依赖库变得简单。然而&#xff0c;在使用Composer时&#xff0c;开发者可能会遇到一些常见的错误。在本文中&#xff0c;我们将探讨一些常见的Composer错误以及相应的解决方案…...

系统架构图怎么画

画架构图是架构师的一门必修功课。 对于架构图是什么这个问题&#xff0c;我们可以按以下等式进行概括&#xff1a; 架构图 架构的表达 架构在不同抽象角度和不同抽象层次的表达&#xff0c;这是一个自然而然的过程。 不是先有图再有业务流程、系统设计和领域模型等&#…...

微信小程序页面生命周期和小程序api组件的生命周期

小程序组件的生命周期...

通过node 后端实现颜色窃贼 (取出某个图片的主体rgb颜色 )

1.需求 我前端轮播图的背景色 想通过每一张轮播图片的颜色作为背景色 这样的话 需要通过一张图片 取出图片的颜色 这个工作通过前端去处理 也可以通过后端去处理 前端我试了试 color-thief 的插件 但是 这个插件是基于canvas 的模式来的 我需要在小程序中使用这个插件 而且是…...

【蓝桥杯第十三届省赛B组】(详解)

九进制转十进制 #include <iostream> #include<math.h> using namespace std; int main() {cout << 2*pow(9,3)0*pow(9,2)2*pow(9,1)2*pow(9,0) << endl;return 0; }顺子日期 #include <iostream> using namespace std; int main() {// 请在此…...

网址打包微信小程序源码 wap转微信小程序 网站转小程序源码 网址转小程序开发

内容目录 一、详细介绍二、效果展示2.效果图展示 三、学习资料下载 一、详细介绍 我们都知道微信小程序是无法直接打开网址的。 这个小程序源码提供了一种将网址直接打包成微信小程序的方法&#xff0c; 使得用户可以在微信小程序中直接访问这些网址内容。 这个源码没有进行加…...

C# OpenCvSharp 轮廓检测

目录 效果 代码 下载 效果 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using OpenCvSharp; using OpenCvSharp.…...

阿里云服务器安装SSL证书不起作用的解决方案

阿里云服务器安装SSL证书不起作用的解决方案 在阿里云安装SSL证书后&#xff0c;访问无效&#xff0c;各种检查证书安装没有问题。忽然想到阿里云默认连80端口都没开启&#xff0c;443端口应该也没开启。 登录阿里云控制台 - 云服务器 ECS - 网络与安全 - 安全组 - 管理规则 - …...

【二】【设计模式】建造者模式

建造者模式的引入 //C10_1.cpp #include <stdio.h>#include "SystemConfig.h"int main() {SystemConfig config("mysql://127.0.0.1/", "xiaomu", "xiaomumemeda","redis://127.0.0.1/", "xiaomuredis", &q…...

Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤

集群搭建 整体思路:先在一个节点上安装、配置,然后再克隆出多个节点,修改 IP ,免密,主机名等 提前规划: 需要三个节点,主机名分别命名:node1、node2、node3 在下面对 node1 配置时,先假设 node2 和 node3 是存在的 **注意:**整个搭建过程,除了1和2 步,其他操作都使…...

【Python】python+requests+excel+pytest-实现接口自动化实例

目录 测试需求实现思路完整框架2.1 初始化数据 (test_data.xlsx)2.2 核心脚本 (api_client.py)2.3 测试用例 (test_interfaces.py)2.4 日志 (logging)2.5 pytest配置文件 (pytest.ini)2.6 测试报告 (pytest-html)2.7 入口函数 (run_tests.py)2.8 完整流程注意事项测试需求 简单…...

Django(四)-搭建第一个应用(3)

一、问题详情页 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>展示某个投票的问题和不带结果的选项列表</title> </head> <body><form action"{% url polls:vote questi…...

吴恩达2022机器学习专项课程(一) 4.2 梯度下降实践

问题预览/关键词 本节内容梯度下降更新w的公式梯度下降更新b的公式的含义α的含义为什么要控制梯度下降的幅度&#xff1f;导数项的含义为什么要控制梯度下降的方向&#xff1f;梯度下降何时结束&#xff1f;梯度下降算法收敛的含义正确更新梯度下降的顺序错误更新梯度下降的顺…...

SQL,group by分组后分别计算组内不同值的数量

SQL&#xff0c;group by分组后分别计算组内不同值的数量 如现有一张购物表shopping 先要求小明和小红分别买了多少笔和多少橡皮&#xff0c;形成以下格式 SELECT name,COUNT(*) FROM shopping GROUP BY name;SELECT name AS 姓名,SUM( CASE WHEN cargo 笔 THEN 1 ELSE 0 END)…...

关于python中常用命令(持续更新中)

目录 关于pip 卸载安装pip 更新pip 更换pip镜像源 清除缓存 更新指定包 指定清华镜像下载指定包 关于conda 更换清华镜像源 优先使用清华镜像 清除缓存 关于数据分析、数据挖掘常用 Matplotlib 3.6.0 文档&#xff08;绘图实例&#xff09; jupyter字体问题 jup…...

JAVA学习笔记21

1.IDEA的使用 1.ctrl B 快速定位到方法 2.ctrl Y 快速删除行 3.ctrl D 快速复制行 4.ctrl H 查看继承的层级关系 5.快速格式化代码 ctrl shift L 6.alt R 快速允许程序 7.ctrl / 快速添加注释 1.包(软件包) 1.1包的三大作用 1.区分相同名字的类 2.当类很多的…...

如何制作Word模板并用Java导出自定义的内容

1前言 在做项目时会按照指定模板导出word文档,本文讲解分析需求后,制作word模板、修改模板内容,最终通过Java代码实现按照模板自定义内容的导出。 2制作word模板 2.1 新建word文档 新建word文档,根据需求进行编写模板内容,调整行间距和段落格式后将指定替换位置留空。…...

ubuntu 安装配置samba服务器完整教程

ubuntu 安装配置samba服务器完整教程 问题描述解决方法郑重声明:本人原创博文,都是实战,均经过实际项目验证出货的 转载请标明出处:攻城狮2015 Platform: Intel arm64 OS:ubuntu16.04 问题描述 在安卓驱动系统开发的过程中,会需要搭建服务器,又需要搭建samba服务器,下面就…...

【APP_TYC】数据采集案例天眼APP查_查壳脱壳反编译_③

是不是生活太艰难 还是活色生香 我们都遍体鳞伤 也慢慢坏了心肠 你得到你想要的吗 换来的是铁石心肠 可曾还有什么人 再让你幻想 &#x1f3b5; 朴树《清白之年》 查壳 工具介绍Frida-dexDump Frida-dexDump简介 Frida-dexDump是基于Frida的一个工具&…...

通过MobaXterm工具可视化服务器桌面

一、MobaXterm工具 MobaXterm是一款功能强大的远程连接工具&#xff0c;可以连接到各种类型的服务器&#xff0c;包括Linux、Windows和MacOS。支持多种协议&#xff0c;包括SSH、RDP、VNC和Telnet MobaXterm可以通过X11转发功能可视化服务器桌面。 二、MobaXterm工具可视化服务…...

ctf题目

目录 1.文件包含的一道题目&#xff0c;没什么难度&#xff0c; 2.一道sql注入的题目&#xff0c;伪静态 3.限制只能本地访问。 1.文件包含的一道题目&#xff0c;没什么难度&#xff0c; 但是一个点就是它这里去包含的那个文件名就是flag&#xff0c;而不是flag.php也不是f…...

git 更改仓库地址

背景&#xff1a; 项目本来在A仓库进行保管&#xff0c;研发已经开发一段时间了&#xff0c;现在切换到了新的仓库B&#xff0c;研发本地如何将仓库切换到B 解决&#xff1a; # 查看远端地址 git remote -v # 查看远端仓库名 git remote # 重新设置远程仓库 git remote s…...

GLTFExporter是一个用于将3D场景导出为glTF格式的JavaScript库。

demo案例 GLTFExporter是一个用于将3D场景导出为glTF格式的JavaScript库。下面我将逐个讲解其入参、出参、属性、方法以及API使用方式。 入参&#xff08;Input Parameters&#xff09;: GLTFExporter的主要入参是要导出的场景对象和一些导出选项。具体来说&#xff1a; s…...

消息队列经典应用场景

笔者心中,消息队列,缓存,分库分表是高并发解决方案三剑客。 在职业生涯中,笔者曾经使用过 ActiveMQ 、RabbitMQ 、Kafka 、RocketMQ 这些知名的消息队列 。 这篇文章,笔者结合自己的真实经历,和大家分享消息队列的七种经典应用场景。 1 异步&解耦 笔者曾经负责某电…...

阿里云Salesforce CRM功能差异列表 - Winter‘24

阉割版的阿里云Salesforce由于技术和监管等因素与国际版的Salesforce差距很大&#xff01; 一、Winter‘ 24版差异概况&#xff1a; 1.1. 主要版本&#xff1a; 阿里云上的 Salesforce 提供两个版本&#xff0c;用于生产用途的 CN 版本&#xff08;CN Edition&#xff09;和用…...

WIN10系统下误删除了用户重启无法登录

WIN10系统下误删除了用户重启无法登录 不小心在控制面板的用户组里面删除了当前的用户&#xff0c;在电脑重启后无论怎么输入密码都提示不正确不能登录。 在选择登录的界面同时点击 shift 和重启按钮&#xff1b;在进入的界面选择“疑难问题”&#xff1b;选择进入安全模式&…...

wordpress 照片展示/数据分析软件工具有哪些

上一篇博客中我们使用了四元数法计算ICP。本篇我们使用SVD计算ICP。下面是《视觉slam十四讲》中的计算方法&#xff1a;计算步骤如下&#xff1a;我们看到&#xff0c;只要求出了两组点之间的旋转&#xff0c;平移是非常容易得到的&#xff0c;所以我们重点关注R的计算。展开关…...

富库网站建设/朋友圈的广告推广怎么弄

2019独角兽企业重金招聘Python工程师标准>>> 原文Eight Ways Your Android App Can Leak Memory 解决篇&#xff1a;Android防止内存泄漏的八种方法&#xff08;下&#xff09;。 Java是垃圾回收语言的一种&#xff0c;其优点是开发者无需特意管理内存分配&#xff…...

官方网站建设进度表/今日搜索排行榜

1. static 和 final 的用法 static 的作用从三个方面来谈&#xff0c;分别是静态变量、静态方法、静态类。 静态变量&#xff1a;声明为 static 的静态变量实质上就是全局变量&#xff0c;当声明一个对象时&#xff0c;并不产生static 变量的拷贝&#xff0c;而是该类所有实例…...

做废钢推广网站/北京seo地址

通过在SOAP Header中携带认证ID&#xff0c;可避免调用WebService时对HTTP Cookie的依赖&#xff0c;实现自定义的认证和Session管理。具体实现方法如下&#xff1a; 自定义SOAP Header publicclassSessionHeader : SoapHeader{ public string SessionId;}扩展属性的定义 […...

平乡县网站建设平台位置/网时代教育培训机构官网

以下面这个URL为例&#xff0c;介绍下普通URL的各部分组成 http://www.aspxfans.com:8080/news/index.asp?boardID5&ID24618&page1#name从上面的URL可以看出&#xff0c;一个完整的URL包括以下几部分&#xff1a;1、协议部分&#xff1a;该URL的协议部分为“http&…...

帝国cms小说阅读网站模板/seo优化与sem推广有什么关系

NumberPicker使用,实现滑动选择(可实现省市联动) 最近使用了一个控件NumberPicker,该控件可以实现省市区联动以及其他各种滑动选择&#xff0c;这里只是简单的记录下如何使用。效果图: 先是xml文件: <?xml version"1.0" encoding"utf-8"?> <Fra…...