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

读SQL学习指南(第3版)笔记06_连接和集合

1. 连接

1.1. 笛卡儿积

1.1.1. 交叉连接(cross join)

1.1.2. 查询并没有指定两个数据表应该如何连接,数据库服务器就生成了笛卡儿积

1.1.2.1. 两个数据表的所有排列组合

1.1.3. 很少会用到(至少不会特意用到)

1.1.3.1. 使用频率并不高

1.1.4. mysql

-> SELECT c.first_name, c.last_name, a.address-> FROM customer c JOIN address a;

1.1.5. 为2020年的每一天生成一行,但是数据库中没有包含每天一行的数据表

1.1.5.1. 涉及交叉连接、外连接、日期函数、分组、集合运算(union all)和聚合函数(count())

1.1.5.2. sql

 SELECT '2020-01-01' dt
UNION ALL
SELECT '2020-01-02' dt
UNION ALL
SELECT '2020-01-03' dt
UNION ALL
...
...
...
SELECT '2020-12-29' dt
UNION ALL
SELECT '2020-12-30' dt
UNION ALL
SELECT '2020-12-31' dt

1.1.5.3. mysql

 -> SELECT ones.num + tens.num + hundreds.num-> FROM-> (SELECT 0 num UNION ALL-> SELECT 1 num UNION ALL-> SELECT 2 num UNION ALL-> SELECT 3 num UNION ALL-> SELECT 4 num UNION ALL-> SELECT 5 num UNION ALL-> SELECT 6 num UNION ALL-> SELECT 7 num UNION ALL-> SELECT 8 num UNION ALL-> SELECT 9 num) ones-> CROSS JOIN-> (SELECT 0 num UNION ALL-> SELECT 10 num UNION ALL-> SELECT 20 num UNION ALL-> SELECT 30 num UNION ALL-> SELECT 40 num UNION ALL-> SELECT 50 num UNION ALL-> SELECT 60 num UNION ALL-> SELECT 70 num UNION ALL-> SELECT 80 num UNION ALL-> SELECT 90 num) tens-> CROSS JOIN-> (SELECT 0 num UNION ALL-> SELECT 100 num UNION ALL-> SELECT 200 num UNION ALL-> SELECT 300 num) hundreds;

1.1.5.4. 如果生成{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}、{0, 10, 20, 30, 40, 50, 60, 70, 80, 90}和{0,100, 200, 300}这3个集合的笛卡儿积,并将这3列的值相加,就可以得到包含0~399的所有数值的400行结果集

1.1.5.5. mysql

 -> SELECT DATE_ADD('2020-01-01',->   INTERVAL (ones.num + tens.num + hundreds.num) DAY) dt-> FROM->  (SELECT 0 num UNION ALL->   SELECT 1 num UNION ALL->   SELECT 2 num UNION ALL->   SELECT 3 num UNION ALL->   SELECT 4 num UNION ALL->   SELECT 5 num UNION ALL->   SELECT 6 num UNION ALL->   SELECT 7 num UNION ALL->   SELECT 8 num UNION ALL->   SELECT 9 num) ones->   CROSS JOIN->  (SELECT 0 num UNION ALL->   SELECT 10 num UNION ALL->   SELECT 20 num UNION ALL->   SELECT 30 num UNION ALL->   SELECT 40 num UNION ALL->   SELECT 50 num UNION ALL->   SELECT 60 num UNION ALL->   SELECT 70 num UNION ALL->   SELECT 80 num UNION ALL->   SELECT 90 num) tens->   CROSS JOIN->  (SELECT 0 num UNION ALL->   SELECT 100 num UNION ALL->   SELECT 200 num UNION ALL->   SELECT 300 num) hundreds-> WHERE DATE_ADD('2020-01-01',->   INTERVAL (ones.num + tens.num + hundreds.num) DAY) < '2021-01-01'-> ORDER BY 1;

1.1.5.6. 无须人为介入,结果集会自动包含额外的闰日(2月29日),这是由数据库服务器通过将2020年1月1日加上59天计算得出

1.2. 内连接

1.2.1. 增加了连接类型(注意关键字inner)

1.2.2. mysql

 -> SELECT c.first_name, c.last_name, a.address-> FROM customer c JOIN address a->   ON c.address_id = a.address_id;

1.2.3. sql

SELECT c.first_name, c.last_name, a.address
FROM customer c INNER JOIN address aON c.address_id = a.address_id;

1.2.4. 如果用于连接两个数据表的列名相同,则可以使用using子句替代on

1.2.4.1. sql

SELECT c.first_name, c.last_name, a.address
FROM customer c INNER JOIN address aUSING (address_id);

1.2.4.2. using是一种只能在某些特定情况下使用的简写表示法

1.3. 外连接(outer join)

1.3.1. 如果要将一个数据表中的所有行全部纳入结果集,不管其在另一个数据表中是否存在匹配

1.3.2. mysql

 -> SELECT f.film_id, f.title, count(i.inventory_id) num_copies-> FROM film f->   LEFT OUTER JOIN inventory i->   ON f.film_id = i.film_id-> GROUP BY f.film_id, f.title;

1.3.3. 关键字left和right只是告知服务器哪个数据表的数据可以不足

1.3.4. outer关键字是可选的,可以使用A left join B来代替

1.4. 自然连接(natural join)

1.4.1. 依靠多个数据表之间相同的列名来推断适合的连接条件

1.4.2. mysql

 -> SELECT c.first_name, c.last_name, date(r.rental_date)-> FROM customer c->   NATURAL JOIN rental r;
Empty set (0.04 sec)

1.4.3. 数据库服务器检查数据表定义并添加了连接条件r.customer_id = c.customer_id

1.4.4. 应该避免使用这种连接类型,而使用带有显式连接条件的内连接

1.5. 连接的旧方法

1.5.1. mysql

 -> SELECT c.first_name, c.last_name, a.address-> FROM customer c, address a-> WHERE c.address_id = a.address_id;

1.5.2. 不需要on子句

1.5.3. from子句中的数据表名以逗号分隔

1.5.4. 连接条件出现在where子句中

1.6. ANSI连接语法

1.6.1. 连接条件和过滤条件被分隔在两个不同的子句中(on子句和where子句),使得查询语句更易于理解

1.6.2. 两个数据表的连接条件出现在其各自单独的on子句中,这样就不太可能错误地忽略连接条件

1.6.3. 使用SQL92连接语法的查询语句可以在各种数据库服务器间移植,而旧语法在不同服务器上的表现略有不同

1.7. 连接顺序

1.7.1. 各数据表在from子句中出现的顺序并不重要

1.7.1.1. 服务器使用从数据库对象收集的统计信息,在3个数据表中选择一个作为起点(所选择的数据表被称为驱动表),然后确定其他数据表的连接顺

1.7.2. 如果认为查询语句中的数据表应该始终以特定的顺序连接,可以将数据表按照需要的顺序排列

1.7.2.1. 在MySQL中指定straight_join关键字

1.7.2.1.1. sql
SELECT STRAIGHT_JOIN c.first_name, c.last_name, ct.city
FROM city ctINNER JOIN address aON a.city_id = ct.city_idINNER JOIN customer cON c.address_id = a.address_id

1.7.2.2. 在SQL Server中请求force order选项

1.7.2.3. 在Oracle Database中使用ordered或leading优化器

1.7.3. 三路外连接

1.7.3.1. mysql

-> SELECT f.film_id, f.title, i.inventory_id, r.rental_date-> FROM film f->   LEFT OUTER JOIN inventory i->   ON f.film_id = i.film_id->   LEFT OUTER JOIN rental r->   ON i.inventory_id = r.inventory_id-> WHERE f.film_id BETWEEN 13 AND 15;

1.8. 自连接

1.8.1. mysql

-> SELECT f.title, f_prnt.title prequel-> FROM film f->   INNER JOIN film f_prnt->   ON f_prnt.film_id = f.prequel_film_id-> WHERE f.prequel_film_id IS NOT NULL;

2. 集合

2.1. 在对两个数据集执行集合运算时

2.1.1. 两个数据集的列数必须相等

2.1.2. 两个数据集各列的数据类型必须相同

2.1.2.1. 数据库服务器必须能够将一种数据类型转换成另一种数据类型

2.2. union运算符

2.2.1. mysql

 -> SELECT 1 num, 'abc' str-> UNION-> SELECT 9 num, 'xyz' str;

2.2.2. union会对组合后的集合进行排序并去除重复项

2.2.3. union all则不然

2.3. intersect运算符

2.3.1. ANSI SQL规范中定义了用于执行交集运算的intersect运算符

2.3.2. ANSI SQL规范还提供了不去除重复行的intersect all运算符

2.3.2.1. 唯一实现了intersect all运算符的数据库服务器是IBM DB2 Universal Server

2.3.3. MySQL 8.0版还未实现intersect运算符

2.3.4. Oracle或SQL Server 2008中可以使用

2.4. except运算符

2.4.1. ANSI SQL规范提供了执行差集运算的except运算符

2.4.2. ANSI SQL规范还提供了except all运算符

2.4.2.1. 只有IBM的 DB2 Universal Server实现了该运算符

2.4.3. MySQL 8.0版也没有实现except运算符

2.4.4. Oracle Database需要使用非ANSI兼容的minus运算符替代except运算符

2.5. 对符合查询结果排序

2.5.1. mysql

 -> SELECT a.first_name fname, a.last_name lname-> FROM actor a-> WHERE a.first_name LIKE 'J%' AND a.last_name LIKE 'D%'-> UNION ALL-> SELECT c.first_name, c.last_name-> FROM customer c-> WHERE c.first_name LIKE 'J%' AND c.last_name LIKE 'D%'-> ORDER BY lname, fname;

2.6. 集合运算的优先级

2.6.1. 包含3个或以上查询语句的复合查询,是以自顶向下的顺序来评估查询的

2.6.2. 根据ANSI SQL规范,intersect运算符拥有比其他集合运算符更高的优先级

2.6.3. 可以将查询放入括号内,以明确指定查询的执行顺序

2.6.3.1. MySQL目前还不允许在复合查询中使用括号

2.6.3.2. 将相邻查询放入括号中,以覆盖复合查询默认的自顶向下的处理方式

 

相关文章:

读SQL学习指南(第3版)笔记06_连接和集合

1. 连接 1.1. 笛卡儿积 1.1.1. 交叉连接(cross join) 1.1.2. 查询并没有指定两个数据表应该如何连接,数据库服务器就生成了笛卡儿积 1.1.2.1. 两个数据表的所有排列组合 1.1.3. 很少会用到(至少不会特意用到) 1.…...

C#学习,结构,面向对象,类

结构和类 结构是从过程化程序设计中保留下来的一种数据类型,类则是面向对象程序设计中最基本的、也是最重要的概念。 结构 结构是一种值类型,通常用来封装一组相关的变量,结构中可以包含构造函数、变量、字段、方法、属性、运算符、事件和…...

【PHP】文件操作

文章目录 文件编程的必要性目录操作其它目录操作递归遍历目录PHP5常见文件操作函数PHP4常见文件操作函数其他文件操作函数 文件编程的必要性 文件编程指利用PHP代码针对文件(文件夹)进行增删改查操作。 在实际开发项目中,会有很多内容&…...

科创板50ETF期权交易:详细规则、费用、保证金和开户攻略

科创板50ETF期权是指以科创板50ETF为标的资产的期权合约。科创板50ETF是由交易所推出的一种交易型开放式指数基金(ETF),旨在跟踪科创板50指数的表现,下文介绍科创板50ETF期权交易:详细规则、费用、保证金和开户攻略&am…...

怎么把图片放大并且清晰?有详细的方法步骤

怎么把图片放大并且清晰?数字图像处理中的图片放大是许多行业和领域中广泛应用的一项技术。常规的放大方法通过插值或复制像素的方式增加像素数,但这会导致失真和模糊。无损放大是一种特殊的放大方法,它可以通过数学算法来增加图片的尺寸&…...

C++ 构造函数、析构函数调用虚函数

C虚函数是通过虚表实现的,虚函数的地址记录在需表中,只对象完成构造完成后,虚函数的地址才最终确定。 构造函数中调用虚函数 基类先于派生类构造,所以构造时没法调用到派生类的虚函数,也就是说只能调用到自己&#x…...

工业状态监测如何选择合适的无线技术?

工业领域的状态监测在提高生产效率和产品质量方面起着关键作用。过去依赖于预防性维护和例行检查的方式已经不再能满足日益复杂的生产需求,随着工业物联网(IIoT)的兴起,设备状态监测逐渐成为一种关键策略,催生了预测性…...

Mysql45讲学习笔记

前言:这篇文章主要总结事务,锁、索引的一些知识点,然后分享一下自己学习小心得,我会从点到线在到面展开说说,对于学习任何知识,我们都应该藐其全貌,不要一开始就选入细节 基础 一、基础架构&a…...

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

报错描述 情景一 1Panel在"主机-->进程守护"通过命令"nohup /opt/tomcat/bin/startup.sh > /opt/supersivor/tomcat/nohup.log &"创建守护进程,运行日志如下: #--------------------------------------------------------…...

opencv 水果识别+UI界面识别系统,可训练自定义的水果数据集

目录 一、实现和完整UI视频效果展示 主界面: 测试图片结果界面: 自定义图片结果界面: 二、原理介绍: 图像预处理 HOG特征提取算法 数据准备 SVM支持向量机算法 预测和评估 完整演示视频: 完整代码链接 一、…...

TypeScript数组和对象的操作

TypeScript数组和对象的操作 一、数组的声明二、数组初始化三、数组元素赋值、添加、更改四、删除五、合并、断开数组六、查找数组元素七、连接数组元素八、排序、反序数组九、遍历数组&#xff0c;对象 一、数组的声明 let arr1: Array<number>; let arr2: number[];二…...

docker之Compose与DockerSwarm

目录 Compose 简介 概念 为什么需要&#xff1f; 配置字段 常用命令 安装 1.下载 2.授权 使用 1.创建文件 2.启动 docker Swarm 关键概念 调度策略 spread binpack random 特性 集群部署 1.准备 2.创建swarm并添加节点 在主服务器上创建swarm集群 节点…...

VS Code 使用 clang++ 编译,使用 cppvsdbg 或 lldb 调试的配置方法

需要安装的 VS Code LLVM VS Code 需要安装的插件&#xff1a; C/C&#xff08;用来配置 c_cpp_properties.json&#xff09; CodeLLDB&#xff08;如果你要用 lldb 调试&#xff0c;那么这个插件就需要安装&#xff0c;用来连接到 lldb 调试器&#xff09; 流程 我们都…...

android11,12 Launcher3编译什么

1首先看看手机里的是什么 adb shell pm path com.android.launcher3 package:/system_ext/priv-app/Launcher3QuickStep/Launcher3QuickStep.apk 然后就编译Launcher3QuickStep 2push apk 没什么说的&#xff0c;push到对应的文件夹 /system_ext/priv-app/Launcher3Quick…...

Go 第三方库引起的线上问题、如何在线线上环境进行调试定位问题以及golang开发中各种问题精华整理总结

Go 第三方库引起的线上问题、如何在线线上环境进行调试定位问题以及golang开发中各种问题精华整理总结。 01 前言 在使用 Go 语言进行 Web 开发时&#xff0c;我们往往会选择一些优秀的库来简化 HTTP 请求的处理。其中&#xff0c;go-resty 是一个被广泛使用的 HTTP 客户端。…...

【C语言】#define 宏定义初步使用

使用宏定义可以防止出错&#xff0c;提高可移植性&#xff0c;可读性&#xff0c;方便性等。 下面列举了一些成熟软件中常用的宏定义。 重新定义一些基本类型 重新定义一些类型&#xff0c;防止由于各种平台和编译器的不同&#xff0c;而产生的类型字节数差异&#xff0c;方便…...

项目里面怎么解决跨域的?

一.前端配置跨域 proxy解决跨域 在vue.config.js中通过proxy devServer中配置反向代理。 devServer: {port: port,open: true,overlay: {warnings: false,errors: true},// 配置反向代理proxy: {// 当地址中有/api的时候会触发代理机制/api: {target: http://ihrm-java.ithe…...

Oracle 批量导出表注释和主键

–查询分表&#xff08;目前分了16张表&#xff09; –先查询注释为空的表&#xff0c;也就是11表做示例&#xff0c;统计出来以后11批量修改成1 select owner,column_name,comments,table_name from all_col_comments a where a.table_name like ‘TB%1’ and a.comments is n…...

Linux C++ 海康摄像头获取过车信息

代码 void CALLBACK MessageCallback(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void *pUser) {printf("enter MessageCallback---------------------->\n");int i;NET_DVR_ALARMINFO_V30 struAlarmInfo;memcpy(&struAl…...

iOS逆向:越狱及相关概念的介绍

在上一篇内容中我们介绍了App脱壳的技术&#xff0c;今天我们来介绍一个和iOS逆向密切相关的知识&#xff1a;越狱。 iOS操作系统的封闭性一直是开发者们关注的焦点之一。为了突破Apple的限制&#xff0c;越狱技术应运而生。本文将深入探讨iOS越狱&#xff0c;包括可越狱的版本…...

SQL语法与DDL语句的使用

文章目录 前言一、SQL通用语法二、DDL语句1、DDL功能介绍2、DDL语句对数据库操作&#xff08;1&#xff09;查询所有数据库&#xff08;2&#xff09;查询当前数据库&#xff08;3&#xff09;创建数据库&#xff08;4&#xff09;删除数据库&#xff08;5&#xff09;切换数据…...

Node.js /webpack DAY6

一、Node.js 入门 1. 什么是 Node.js&#xff1f; 2. 什么是前端工程化&#xff1f; 3. Node.js 为何能执行 JS&#xff1f; 4. Node.js 安装 5. 使用 Node.js 总结 6. fs 模块 - 读写文件 /*** 目标&#xff1a;基于 fs 模块 读写文件内容* 1. 加载 fs 模块对象* 2. 写入文件…...

Java:SpringBoot使用AES对JSON数据加密和解密

目录 1、加密解密原理2、项目示例2.1、项目结构2.2、常规业务代码2.3、加密的实现 2.4、接口测试2.5、总结 1、加密解密原理 客户端和服务端都可以加密和解密&#xff0c;使用base64进行网络传输 加密方 字符串 -> AES加密 -> base64解密方 base64 -> AES解密 -&g…...

【PHP】Swoole:一款强大的PHP网络编程工具

在科学计算领域&#xff0c;Swoole是一款功能强大的PHP扩展&#xff0c;它提供了高性能的网络通信和异步编程功能。Swoole不仅支持TCP、UDP、Unix Socket和HTTP等通信协议&#xff0c;还具有异步并发处理能力&#xff0c;使得PHP开发者能够轻松地构建高性能的网络应用程序。 1…...

【C语言】每日一题(除自身以外数组的乘积)

添加链接描述&#xff0c;链接奉上 方法&#xff1a; 暴力循环:前缀积后缀积&#xff08;分组&#xff09;: 暴力循环: 暴力循换真的是差生法宝&#xff0c;简单好懂&#xff0c;就是不实用&#xff0c;大多数的题目都会超过时间限制&#xff08;无奈&#xff09; 思路&…...

C语言每日一练-----Day(4)

本专栏为c语言练习专栏&#xff0c;适合刚刚学完c语言的初学者。本专栏每天会不定时更新&#xff0c;通过每天练习&#xff0c;进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字&#xff1a;记负均正    旋转数组的最小数字    二分查找 &#x1f493;博主…...

如何使用工具将批量查询的物流信息导出到表格

现如今&#xff0c;物流行业发展迅速&#xff0c;人们对于物流信息的查询需求也越来越高。为了满足用户的需求&#xff0c;我们推荐一款便捷高效的物流信息查询工具——"固乔快递查询助手"软件。 首先&#xff0c;用户需要下载并安装"固乔快递查询助手"软件…...

Haproxy+Keepalive 整合rabbitmq实现高可用负载均衡

Haproxy 实现负载均衡 HAProxy 提供高可用性、负载均衡及基于 TCPHTTP 应用的代理&#xff0c;支持虚拟主机&#xff0c;它是免费、快速并且可靠的一种解决方案&#xff0c;包括 Twitter,Reddit,StackOverflow,GitHub 在内的多家知名互联网公司在使用。HAProxy 实现了一种…...

电子病历系统的核心技术——电子病历编辑器

一体化电子病历系统基于云端SaaS服务的方式&#xff0c;采用B/S&#xff08;Browser/Server&#xff09;架构提供&#xff0c;覆盖了医疗机构电子病历模板制作到管理使用的整个流程。除实现在线制作内容丰富、图文并茂、功能完善的电子病历模板外&#xff0c;还可按照医疗机构的…...

C++------map和set的使用

文章目录 关联式容器键值对树型结构的关联式容器set的介绍map的介绍 关联式容器 什么是关联式容器&#xff1f;它与序列式容器有什么区别&#xff1f; 关联式容器也是用来存储数据的&#xff0c;与序列式容器不同的是&#xff0c;其里面存储的是<key&#xff0c;value>结…...

URI和URL和URN区别

URI、URL 和 URN 是一系列从不同角度来看待资源标识和定位的概念。虽然它们有一些重叠&#xff0c;但每个概念都强调了不同的方面。 URI&#xff08;Uniform Resource Identifier&#xff09;&#xff1a;URI 是一个通用的术语&#xff0c;用于标识和定位资源。它是一个抽象的概…...

【Unity学习笔记】DOTween(1)基础介绍

本文中大部分内容学习来自DOTween官方文档 文章目录 什么是DOTween&#xff1f;DOSetOnTweenerSequenceTweenNested tween 初始化使用方式 什么是DOTween&#xff1f; DOTween是一个动画插件&#xff0c;Tween是补间的意思。这个插件以下简称DOT&#xff0c;DOT很方便使用&…...

springboot项目,使用JNA框架调用C++库无法捕获异常的解决思路

写在前面&#xff1a;这个东西真的坑&#xff0c;工作上遇到的和JNA项目的入门案例差别就像是二重积分与小学数学之间的差距&#xff0c;折磨&#xff01; 使用 JNA&#xff08;Java Native Access&#xff09;框架调用 C 库时&#xff0c;如果出现问题导致进程直接结束而无法捕…...

【项目 计网7】4.20 多进程实现并发服务器 4.22 多线程实现并发服务器

文章目录 4.20 多进程实现并发服务器server_process.cclient.c4.22 多线程实现并发服务器客户端代码&#xff1a;服务端代码&#xff1a; 4.20 多进程实现并发服务器 要实现TCP通信服务器处理并发的任务&#xff0c;使用多线程或者多进程来解决。 思路&#xff1a; 1、一个父进…...

论文阅读_扩散模型_LDM

英文名称: High-Resolution Image Synthesis with Latent Diffusion Models 中文名称: 使用潜空间扩散模型合成高分辨率图像 地址: https://ieeexplore.ieee.org/document/9878449/ 代码: https://github.com/CompVis/latent-diffusion 作者&#xff1a;Robin Rombach 日期: 20…...

LeetCode——回溯篇(二)

刷题顺序及思路来源于代码随想录&#xff0c;网站地址&#xff1a;https://programmercarl.com 目录 131. 分割回文串 93. 复原 IP 地址 78. 子集 90. 子集 II 491. 递增子序列 131. 分割回文串 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个…...

RabbitMQ工作模式-发布订阅模式

Publish/Subscribe&#xff08;发布订阅模式&#xff09; 官方文档&#xff1a; https://www.rabbitmq.com/tutorials/tutorial-three-python.html 使用fanout类型类型的交换器&#xff0c;routingKey忽略。每个消费者定义生成一个队列关绑定到同一个Exchange&#xff0c;每个…...

JDK源码解析-Object

1. Object类 所有类的基类——java.lang.Object Object 类是所有类的基类&#xff0c;当一个类没有直接继承某个类时&#xff0c;默认继承Object类Object 类属于 java.lang 包&#xff0c;此包下的所有类在使用时无需手动导入&#xff0c;系统会在程序编译期间自动导入。 思…...

pinia——添加插件——基础积累

问题&#xff1a;是否给pinia添加过插件&#xff1f;具体添加的方式是什么&#xff1f; 在pinia中&#xff0c;我们可以为仓库添加插件&#xff0c;通过添加插件能够扩展以下的内容&#xff1a; 为 store 添加新的属性 定义 store 时增加新的选项 为 store 增加新的方法 包装现…...

软件国产化之殇

今天又看到这么一个帖子讨论一款国产化软件&#xff0c;属实给我震撼到了。 对于国产化产品&#xff0c;一直主打的都是”自研“&#xff0c;难道是我对”自研“这个词的理解有误&#xff1f; 做一个产品&#xff0c;别人开源了&#xff0c;你拿过来使用&#xff0c;你可以说…...

SQLyog问题处理集合

sqlyog 问题处理 1. 错误号码:1049错误&#xff1a; 数据库命令参数参考&#xff1a;数据库命令地址 检查数据库是否存在检查创建的数据库名称 与 要进行连接的数据库名称是否一致&#xff1b; 2. 错误号码:1819错误&#xff1a; MySQL授予远程连接权限时出现&#xff1a; …...

JavaSE【继承和多态】(1)(重点:初始化、pretected封装、组合)

一、继承 继承 (inheritance) 机制 &#xff1a;是面向对象程序设计使代码可以复用的最重要的手段&#xff0c;它允许程序员在保持原有类特 性 的基础上进行扩展&#xff0c;增加新功能 &#xff0c;这样产生新的类&#xff0c;称 派生类 。 继承呈现了面向对象程序设计的层次结…...

无涯教程-Android Studio函数

第1步-系统要求 您将很高兴知道您可以在以下两种操作系统之一上开始Android应用程序的开发- MicrosoftWindows10/8/7/Vista/2003(32或64位)MacOSX10.8.5或更高版本,最高10.9(小牛) GNOME或KDE桌面 第二点是,开发Android应用程序所需的所有工具都是开源的,可以从Web上下载。以…...

CentOS8安装mysql8.0.24

一、下载mysql安装包并解压 执行以下命令&#xff1a; # 创建mysql安装目录 mkdir /usr/local/mysql # 进入mysql安装目录 cd /usr/local/mysql/ # 下载mysql-8.0.24 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.24-linux-glibc2.12-x86_64.tar.xz # 解压…...

Quasi-eccentricity Error Modeling and Compensation in Vision Metrology

论文&#xff1a;Quasi-eccentricity Error Modeling and Compensation in Vision Metrology 中文&#xff1a;视觉计量中准偏心误差建模与补偿 论文地址&#xff1a;Sci-Hub | Quasi-eccentricity error modeling and compensation in vision metrology. Measurement Scienc…...

ai智能电话机器人是人类的助手和朋友

一直以来&#xff0c;人工智能都是人们关注的热门话题。在以前&#xff0c;说到人工智能&#xff0c;第一想到的是“机器人”&#xff0c;随着人工智能的普及&#xff0c;AI已经渗透到我们生活的每一个角落。现在&#xff0c;说起人工智能&#xff0c;可能会想到“无人驾驶、无…...

应用TortoiseSVN的SubWCRev管理VisualStudio C#项目编译版本号

首先要安装 TortoiseSVN, 并确保TortoiseSVN的bin目录被加入到系统环境变量Path中。 1、拷贝Porperties目录下的文件AssemblyInfo.cs生成副本AssemblyInfo.template, 作为版本管理的模板文件。 2、修改模板文件中的想要管理的版本号信息 // [assembly: AssemblyVersion(&quo…...

【八股】2023秋招八股复习笔记5(计算机网络-CN)

文章目录 八股目录目录1、应用层 & HTTP一些http题HTTPS 加密原理&#xff08;问过&#xff09;HTTP/1.1 新特性HTTP/2.0 与 RPC&#xff08;问过&#xff09;GET 和 POST 比较 2、传输层 & TCPTCP三次握手 & 四次挥手&#xff08;问过&#xff09;为什么每次TCP 连…...

【C++】SLT——Vector详解

本片要分享的是关于STL中Vector的内容&#xff0c;Vector的内容于string非常相似&#xff0c;只要会使用string那么学习Vector时会非常流畅。 目录 1.vector介绍 2.vector的简单实用 2.1.简单的无参构造 ​编辑2.2.简单带参构造 2.3.迭代器区间初始化 2.4.vector的遍历 …...

企业网络安全:威胁情报解决方案

什么是威胁情报 威胁情报是网络安全的关键组成部分&#xff0c;可为潜在的恶意来源提供有价值的见解&#xff0c;这些知识可帮助组织主动识别和防止网络攻击&#xff0c;通过利用 STIX/TAXII 等威胁源&#xff0c;组织可以检测其网络中的潜在攻击&#xff0c;从而促进快速检测…...