一年二年面试java可能问到的问题

这篇博客总结了一年经验的Java开发者在面试中可能遇到的问题,涵盖了数据库连接操作、SQL查询、存储过程与函数的区别、更新查询、MySQL与NoSQL的对比、事务处理、乐观锁与悲观锁、行级锁与表级锁的区别、前端知识和Java基础知识,如线程同步、高并发处理策略,以及Tomcat和Redis的基础知识。
摘要由CSDN通过智能技术生成

对于一年经验 会问到什么问题呢  根据在qq群里大神聊天 所记录一下 !

数据库问题

--内连接
SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students  INNER JOIN   Majors ON Students.MajorID = Majors.ID

--左连接

SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students LEFT JOIN Majors ON Students.MajorID = Majors.ID

--右连接

SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students RIGHT JOIN Majors ON Students.MajorID = Majors.ID

--全连接

SELECT Students.ID,Students.Name,Majors.Name AS MajorName 
FROM Students FULL JOIN Majors ON Students.MajorID = Majors.ID

--交叉连接

SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students CROSS JOIN Majors  WHERE Students.MajorID = Majors.ID

 那么 对于三张表是怎么连接的呢

 两张表连接的 on 或者 where    之后  再连接 比如 

ON Students.MajorID = Majors.ID left join table3 t on t.id=majors.id

三张表的优化  是如何优化 

 

 

2   SQL中存储过程和函数的区别

       本质上没区别 函数:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在

       select中调用,而存储过程不行。执行的本质都一样。 

       对于存储过程来说可以返回参数,而函数只能返回值或者表对象。 

       存储过程一般是作为一个独立的部分来执行(EXEC执行),而函数可以作为查询语句的一个部分来调用

      (SELECT调用),由于函数可以返回一个表对象,因此它可以在查询语句中位于FROM关键字的后面。 

3   更新查询  :在一张表 数据 更新 另一张表

update tablename set xx =(select xx from tablenameb )

4     mysql与nosql有什么区别

即非关系型数据库(nosql)和关系型数据库(mysql)

非关系型数据库 目前最火的 是 Redis、Memchache、MongoDb 

关系型数据库 : mysql ,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值