MySQL面试题

Posted denggelin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL面试题相关的知识,希望对你有一定的参考价值。

 

0.内连接、左连接、右连接的区别是什么?

 

连接类型

INNER JOIN        (内连接)

LEFT OUTER JOIN    (左外连接)

RIGHT OUTER JOIN  (右外连接)

FULL OUTER JOIN    (完全外连接)

连接类型分成内连接和外连接两种。内连接是等值连接,外连接又分成左、右、完全外连接三种。连接类型中INNER、OUTER字样可不写。

内连接,也被称为自然连接,只有两个表相匹配的行才能在结果集中出现。返回的结果集选取了两个表中所有相匹配的数据,舍弃了不匹配的数据。由于内连接是从结果表中删除与其他连接表中没有匹配的所有行,所以内连接可能会造成信息的丢失。

内连接只显示符合连接条件的记录,外连接除了显示符合条件的记录外,还显示表中的记录,例如,如果使用左外连接,还显示左表中的记录。

 

1.如何对数据库表PRODUCT中的字段MARKET_PRICE的平均值四舍五入,并保留一位小数?

 

SELECT ROUND(AVG(MARKET_PRICE),1) FROM PRODUCT;

 

SQL AVG 函数

定义和用法

AVG 函数返回数值列的平均值。NULL 值不包括在计算中。

SQL AVG() 语法

SELECT AVG(column_name) FROM table_name

 

ROUND()

函数 ROUND 函数用于把数值字段舍入为指定的小数位数。

SQL ROUND() 语法

SELECT ROUND(column_name,decimals) FROM table_name

参数 描述

column_name 必需。要舍入的字段。

decimals 必需。规定要返回的小数位数。

 

2.如何实现查询第n行到第m行记录?

 

SELECT * FROM TABLE1 LIMIT N-1,M-1;

 

3.索引的优缺点分别是什么?

 

优点:您可以在表中创建索引,以便更加快速高效地查询数据。用户无法看到索引,它们只能被用来加速搜索/查询。

缺点:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。

因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。

 

以上是关于MySQL面试题的主要内容,如果未能解决你的问题,请参考以下文章

mysql最新面试题,mysql面试题大全汇总

mysql面试题

Mysql面试题详解

面试被问MySQL总回答不好:总结100道MySQL面试题和21题MySQL性能优化

MySQL面试题(无答案版) 中高级必看

MySQL面试题合集!