大家好,今天小编来为大家解答以下的问题,关于2020 年您应该了解的热门SQL 面试问题,这个很多人还不知道,现在让我们一起来看看吧!
大多数与数据相关的工作都要求您了解SQL,并且您不应该让SQL 面试问题成为未找到工作的原因。特别是在查询方面,学习起来非常快,并且您应该确保准备好应对一些最常见的SQL 相关面试问题。
为此,我为您提供了SQL 相关面试问题和答案的列表。请享用!
注意:如果您不知道如何使用SQL查询,可以在这里五分钟学习SQL。
什么是SQL?
SQL 代表结构化查询语言。根据维基百科,SQL 是一种特定于领域的语言,用于编程,旨在管理关系数据库管理系统中保存的数据或关系数据流管理系统中的流处理[1]。
什么是主键?
主键是唯一标识表中每一行的列(或列集)。通常,为此目的创建ID 列。
什么是条款?
SQL 子句是SQL 语句中定义明确的部分,通常用于根据预定义条件过滤结果,但并非总是如此。例如,ORDER BY 是一个子句,但不过滤结果。
五个主要子句是TOP 子句、WHERE 子句、ORDER BY 子句、GROUP BY 子句和HAVING 子句。
WHERE 和HAVING 子句有什么区别?
WHERE 和HAVING 都用于过滤表以满足您设置的条件。当它们与GROUP BY 子句一起使用时,就会显示出两者之间的区别。 WHERE 子句用于在分组之前(GROUP BY 子句之前)过滤行,而HAVING 子句用于在分组之后过滤行。
连接有哪些不同类型,并描述每种类型?
有四种不同类型的连接:
内连接:返回两个表中具有匹配值的记录左连接:返回左表中的所有记录加上右表中的匹配记录右连接:返回右表中的所有记录以及左表中的匹配记录完全连接:当左表或右表中有匹配时返回所有记录UNION 和JOIN 有什么区别?
两者都用于将一个或多个表中的数据合并为一个结果。区别在于JOIN 语句将不同表中的列合并为一个结果,而UNION 语句将不同表中的行合并为一个结果。
DELETE 和TRUNCATE 语句有什么区别?
DELETE 用于从表中删除一行或多行。使用delete语句后可以回滚数据。
TRUNCATE用于删除表中的所有行,执行后数据无法回滚。
什么是视图?
视图也是一个表- 它是对另一个表或多个表进行查询的存储结果集,用户可以像任何其他表一样从中查询。
什么是子查询?这两种类型是什么?
子查询(也称为内部查询或嵌套查询)是另一个SQL 查询中的查询,用于返回将在主查询中用作条件的数据,以进一步限制要检索的数据[2]。
子查询有两种类型:
相关子查询:相关子查询不能独立于外部查询进行评估,因为子查询使用父语句的值。不相关子查询:不相关子查询可以被视为独立查询,并且子查询的输出在主查询中被替换。聚合函数和标量函数有什么区别?分别举一个例子
聚合函数对多个值执行操作以返回单个值。聚合函数通常与GROUP BY 和HAVING 子句一起使用。聚合函数的一些示例包括:
AVG() – 计算值集合的平均值。 COUNT()—计算特定表或视图中的记录总数。 MIN() – 计算一组值的最小值。 MAX() – 计算一组值的最大值。 SUM() – 计算值集合的总和。 FIRST()—获取值集合中的第一个元素。 LAST()—获取值集合中的最后一个元素。标量函数根据输入值返回单个值。标量函数的一些示例包括:
LEN()—计算给定字段(列)的总长度。 UCASE()—将字符串值的集合转换为大写字符。 LCASE()—将字符串值的集合转换为小写字符。 CONCAT()—连接两个或多个字符串。 ROUND() – 计算数值字段的四舍五入整数值(或小数点值)。 SQL 和MySQL 有什么区别?
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/121280.html
用户评论
情如薄纱
这份清单简直太实用了!正好在准备SQL面试,有了这些要点可以好好复习一下,感觉更有信心了。
有14位网友表示赞同!
青墨断笺み
去年面试的时候就被问到了很多这里面的知识点,真的太经典了!感谢分享!
有14位网友表示赞同!
╭摇划花蜜的午后
看到这么多问题,我突然觉得自己SQL功底还是不够深厚,得赶紧补习一下了!这份清单提醒了我很多关键的地方。
有16位网友表示赞同!
酒笙倾凉
一些难题我已经会做,但有些还是不太熟练,需要多加练习才能在面试中表现出色。这个清单能帮到我不少!
有7位网友表示赞同!
短发
这篇文章写的太好了!逻辑清晰、问题精炼,很有用!
有20位网友表示赞同!
花海
2020年的SQL面试题真是一年比一年难!!感觉这份清单涵盖了大部分常见问题,希望我能顺利通过面试!
有14位网友表示赞同!
大王派我来巡山!
面试官总是喜欢问一些变形的SQL问题,这篇文章里的一些示例代码确实很 enlightening,我会尝试用不同方法解决这些问题。
有7位网友表示赞同!
相知相惜
我觉得对于入门者来说,这份清单已经足够全面了。但如果你想真正掌握高级的SQL技巧,还需要多加练习和学习。
有8位网友表示赞同!
心脏偷懒
除了语法方面的问题,面试官还会考察你的逻辑思维能力和解决问题的能力,这篇文章虽然主要列举了SQL问题,但也提醒我要多关注这些其他方面。
有17位网友表示赞同!
那伤。眞美
面试的时候真的容易紧张,希望能通过这份清单提前做好准备,争取顺利完成面试!
有19位网友表示赞同!
执念,爱
看到很多很经典的问题,但我感觉一些题目过于简单,不够难度的挑战性。或许可以分享一些更高级的SQL实战案例?
有15位网友表示赞同!
心贝
虽然这篇文章列举了常见的SQL问题,但具体哪些需要重点关注还是要根据具体的岗位和公司进行调整,不能盲目跟,这份清单只是提供了一种参考方向。
有10位网友表示赞同!
仰望幸福
对于已经从事相关工作一段时间的人来说,这份清单可以起到一个很好的复习的作用,提醒自己哪些知识点需要注意提升。
有6位网友表示赞同!
栀蓝
我认为这篇文章还差一些实战案例的讲解, 比如如何利用SQL完成实际业务场景的操作等内容,这样才能更直观的帮助到读者。
有19位网友表示赞同!
回到你身边
我觉得有些问题缺乏具体的解答步骤和代码示例,这样对于初学者来说不太 helpful。希望作者后续可以补齐这些部分!
有16位网友表示赞同!
?娘子汉
这份清单非常实用,能够让我在面试准备中更有效率地学习SQL知识!
有5位网友表示赞同!
掉眼泪
我感觉文章的标题有点过于局限了,应该更全面一些,例如包含其他数据库相关的面试题,这样更有针对性。
有7位网友表示赞同!
白恍
这篇文章只提到了一些基础的语法问题,对于事务管理、索引优化等高级技巧讲解不足。希望作者能够更新完善这些方面的内容!
有14位网友表示赞同!
伱德柔情是我的痛。
总体来说,这份清单对于SQL面试准备很有帮助,但作为读者,在学习的过程中还需要结合实际项目和经验进行扩展和深化学习。
有12位网友表示赞同!