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

某小厂java后端初面,记录一下

好吧,,,,,本人很菜,再接再励吧,继续刷。简单记录一下面试题,未亡羊补牢呗。
1.lift join ;inner join ;right join 的区别
2. union 和union all的区别
3.like查询会走索引吗?
4.主键和索引的区别
5.count(*),count(1),count(ID)的区别
6.exists了解吗?作用是什么
7.线程池了解吗?
8.spring创建的bean是单例模式还是多例模式,怎么区分?
9.国产数据库了解吗?
10.hashmap和hashTable的区别
11.list是有序的吗?
12.如果一个程序中有个方法响应很慢,你会怎么排查?说说你的思路
13.你有没有什么问题要问我的?没有,好吧,我给你介绍一下我们做的事情,巴拉巴拉…

1.lift join ;inner join ;right join 的区别

INNER JOIN(内连接): 只返回两个表中匹配的行,即只返回连接条件为真的行。
如果一个表中的行在另一个表中没有匹配的行,那么这些行不会出现在结果中。 INNER JOIN返回的是两个表的交集部分。 LEFT
JOIN(左连接): 返回左边表中的所有行,以及与右边表匹配的行。 如果右边表中没有与左边表匹配的行,则返回NULL。 LEFT
JOIN以左表为基础,返回左表的所有记录,以及右表中与左表匹配的记录。如果右表中没有匹配项,则结果中对应字段的值将为NULL。 RIGHT
JOIN(右连接): 返回右边表中的所有行,以及与左边表匹配的行。 如果左边表中没有与右边表匹配的行,则返回NULL。 RIGHT
JOIN以右表为基础,返回右表的所有记录,以及左表中与右表匹配的记录。如果左表中没有匹配项,则结果中对应字段的值将为NULL。

2. union 和union all的区别

1.对结果集的处理方式:Union会对两个或多个结果集进行并集操作,并自动压缩掉其中的重复行,只显示唯一的值,相当于执行了distinct操作。而Union All也会进行并集操作,但它会包括所有的结果,无论是否重复,即所有的结果全部显示。
2.执行效率:由于Union需要对结果集进行去重操作,而Union All则不需要,因此在处理大量数据时,Union All的执行效率通常会比Union高。当可以确认合并的两个结果集中不包含重复数据且不需要排序时,使用Union All会更合适。
3. 是否排序:Union会按照字段的顺序对结果集进行排序,而Union All只是简单地将两个结果合并后就返回,不会对结果进行排序。

3.like查询会走索引吗?

LIKE查询在一定条件下是可以走索引的,关键在于查询的具体形式以及数据库系统的实际处理方式。为了确保LIKE查询能够有效利用索引,最佳实践是尽量避免在搜索词首使用通配符,并确保为常作为LIKE查询条件的列创建合适的索引。
在实际应用中,为了确定LIKE查询是否使用了索引,可以使用数据库的执行计划工具来查看查询的执行计划。这些工具可以显示查询是如何使用索引的,以及是否进行了全表扫描。

4.主键和索引的区别

主键是用于确保数据唯一性的关键约束,同时也自带了一个隐含的唯一索引;而索引则是为了提高数据检索效率的辅助结构,它并不直接涉及数据完整性约束,但能极大提高查询性能。

5.count(*),count(1),count(ID)的区别

count(*):计算结果集中所有行数,包括那些含有null值的行; 它只是简单计算行数,并不关心里面的数据 count(1):
功能上与count(*)类似,也是计算所有行数。
count(ID):计算列(ID)中非null的值的数量。如果ID列中有null的值,这些值不会计算在总数中。由于COUNT(ID)会检查ID中的值是否为null,所以查询效率相对低一些。

6.exists了解吗?作用是什么

EXISTS 是一个重要的关键字,它的主要作用是用来检验一个子查询是否至少会返回一行数据。EXISTS 并不关注子查询返回的具体数据内容,而是关心是否存在满足子查询条件的结果行。
具体作用如下:
结果判断:EXISTS 子查询的结果是一个布尔值 (TRUE 或 FALSE)。如果子查询的结果集中包含至少一行数据,那么 EXISTS
子查询的结果就是 TRUE;若子查询没有返回任何数据,则结果是 FALSE。

过滤行:在主查询中配合 WHERE 子句使用 EXISTS 时,可以用来过滤主查询的结果集。只有当 EXISTS 子查询的结果为 TRUE时,对应的主查询中的行才会被选择出来。

例如,下面是一个使用 EXISTS 的 SQL 查询语句示例:

Sql SELECT column1, column2 FROM table1 WHERE EXISTS (SELECT 1 FROM table2 WHERE table2.columnA = table1.columnA AND table2.columnB = 'some_value' ); 

在这个查询中,将从 table1 中选择那些在 table2 中具有相同 columnA 值并且
columnB 为 ‘some_value’ 的行。如果对于 table1中的任何一行,子查询能找到匹配的记录,那么这一行就会被包含在最终的结果集中。

相对于 IN 子查询,EXISTS 在某些情况下可能具有更好的性能表现,特别是在主表较小而子查询结果集较大的场景下,因为 EXISTS
只需找到匹配的第一行即可得出结论。而 IN 子查询通常需要构造完整的子查询结果集并进行比较。此外,EXISTS 更适用于检查相关性而非具体值

7.线程池了解吗?(高频问题好吧)

我的回答是不了解,惭愧惭愧
后面几个明天再总结,晚安,玛卡巴卡

8.spring创建的bean是单例模式还是多例模式,怎么区分?

9.国产数据库了解吗?

10.hashmap和hashTable的区别

11.list是有序的吗?

12.如果一个程序中有个方法响应很慢,你会怎么排查?说说你的思路

相关文章:

某小厂java后端初面,记录一下

好吧,,,,,本人很菜,再接再励吧,继续刷。简单记录一下面试题,未亡羊补牢呗。 1.lift join ;inner join ;right join 的区别 2. union 和union all的区别 3.like查询会走索引吗&#x…...

Unity制作马赛克效果

大家好,我是阿赵。   之前在玩怒之铁拳4里面,看到了马赛克场景转换的效果,觉得很有趣,于是也来做一下。 一、2D版本的马赛克转场效果 先看看视频效果: 马赛克转场 这里我是直接写shader实现的,我这里是把…...

【零基础学习04】嵌入式linux驱动中信号量功能基本实现

大家好,为了进一步提升大家对实验的认识程度,每个控制实验将加入详细控制思路与流程,欢迎交流学习。 今天给大家分享一下,linux系统里面信号量操作的具体实现,操作硬件为I.MX6ULL开发板。 第一:信号量基本简介 信号量是同步的一种方式,linux内核也提供了信号量…...

SQL中常见的DDL操作及示例,数据库操作及表操作

目录 一、数据库操作 1、创建数据库 2、查看所有数据库 3、使用数据库 4、删除数据库 二、表操作: 1、创建表 2、查看表结构 3、修改表结构 3.1 添加列 3.2 修改列数据类型 3.3 修改列名 3.4 删除列 3.5 修改表名 3.6 删除表 注意: 在数…...

python 基础练习题

目录 1、定义两个变量,交换两个变量【使用多种方式】 2、给定成绩,判断用户成绩的档次 3. 作业:下列哪一项是“4是奇数或-9为正数”的否定( ) 4. 作业:判断一个整数是奇数还是偶数 5. 求矩形的面积和周…...

前端请求到 SpringMVC 的处理流程

1. 发起请求 客户端通过 HTTP 协议向服务器发起请求。 2. 前端控制器(DispatcherServlet) 这个请求会先到前端控制器 DispatcherServlet,它是整个流程的入口点,负责接收请求并将其分发给相应的处理器。 3. 处理器映射&#xf…...

Redis(5.0)

1、什么是Redis Redis是一种开源的、基于内存、支持持久化的高性能Key-Value的NoSQL数据库,它同时也提供了多种数据结构来满足不同场景下的数据存储需求。 2、安装Redis(Linux) 2.1、去官网(http://www.redis.cn/)下…...

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的木材表面缺陷检测系统(深度学习+Python代码+UI界面+训练数据集)

摘要:开发高效的木材表面缺陷检测系统对于提升木材加工行业的质量控制和生产效率至关重要。本篇博客详细介绍了如何运用深度学习技术构建一个木材表面缺陷检测系统,并提供了完整的实现代码。该系统采用了强大的YOLOv8算法,并对YOLOv7、YOLOv6…...

Rust 的 into_owned() 方法

into_owned 是 Rust 语言中 std::borrow::Cow 枚举的一个方法。Cow 是一个“克隆在写时”(Copy on Write)的智能指针,它可以包含对数据的引用或数据的实际所有权。这种设计模式在需要避免不必要的数据复制时特别有用,尤其是当数据…...

stimulsoft report for js vue3使用

项目后端使用的java,试验过积木报表(web界面类型的)、JasperReport(.jasper报表文件)、stimulsoft web版本(.mrt报表文件) 我们的项目是前后端分离的,用积木报表(开箱即…...

JavaScript yield关键字使用举例

yield是JavaScript中的一个关键字,用于定义生成器函数(generator function)中的暂停点。它允许函数在执行过程中暂停,并在下一次调用时从暂停点继续执行。下面是一个使用yield的例子: function* generator() {yield Hello;yield World; }const gen = generator();console…...

18. 查看帖子详情

文章目录 一、建立路由二、开发GetPostDetailHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 router/route.go v1.GET("/post/:id", controller.GetPostDetailHandler)二、开发GetPostDetailHandler controller/post.go func GetPostDetailHand…...

【算法刷题】Day30

文章目录 1. 汉诺塔问题题干:算法原理:代码: 2. 合并两个有序链表题干:算法原理:代码: 3. 反转链表题干:算法原理:代码: 4. 最大子数组和题干:算法原理&#…...

docker容器镜像管理+compose容器编排(持续更新中)

目录 一、 Docker的基本组成 二、 容器和镜像的关系 2.1 面向对象角度 2.2 从镜像容器角度 三、 容器命令 3.1 使用Ubuntu 3.1.1 下载镜像 3.1.2 新建和启动容器 run 3.1.3交互式 compose编排与部署 1. docker-compose部署 2. docker-compose.yml模板 …...

【Greenhills】MULTIIDE集成第三方的编辑器进行源文件编辑工作

【更多软件使用问题请点击亿道电子官方网站查询】 1、 文档目标 在使用GHS进行工作的时候,可以集成第三方的编辑器进行源文件编辑工作 2、 问题场景 用于解决在GHS中进行项目开发时,对于GHS的编辑器使用不习惯,想要切换到其他第三方的编辑…...

【Flutter】 search_page使用心得

https://pub.dev/packages/search_page 以上就是search_page地址。使用方法跟具有哪些功能网页都有,这篇文章主要讲我在使用这个插件时遇到的坑。 坑1:不能自己刷新界面 我在search_page中传入的builder是带有checkbox的ListTile,当我点击…...

前端Vue列表组件 list组件:实现高效数据展示与交互

前端Vue列表组件 list组件:实现高效数据展示与交互 摘要:在前端开发中,列表组件是展示数据的重要手段。本文将介绍如何使用Vue.js构建一个高效、可复用的列表组件,并探讨其在实际项目中的应用。 效果图如下: 一、引言…...

每日OJ题_哈希表⑤_力扣49. 字母异位词分组

目录 力扣49. 字母异位词分组 解析代码 力扣49. 字母异位词分组 49. 字母异位词分组 难度 中等 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 示例 1: 输入…...

【Linux】-Linux下的软件商店yum工具介绍(linux和windows互传文件仅仅一个拖拽搞定!!!!)

目录 1.Linux 软件包管理器yum 1.1快速认识yum 1.2 yumz下载方式(如何使用yum进行下载,注意下载一定要是root用户或者白名单用户(可提权)) 1.2.1下载小工具rzsz 1.2.2 rzsz使用 1.2.2查看软件包 1.3软件的卸载 2.yum生…...

320: 鸡兔同笼(python)

题目描述 一个笼子里关了鸡和兔(鸡有2只脚,兔又4只脚,没有例外)。已知笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物? 输入 多组测试数据。第一行是测试数据的组数n&#…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...

selenium学习实战【Python爬虫】

selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...