admin管理员组

文章数量:1530842

2024年7月12日发(作者:)

2022年度数据库最常用的语言SQL面试题汇总和答案

1、SQL是什么?

SQL 代表结构化查询语言。 它是用于维护关系数据库并对数据执行许多不同的数据操

作操作的标准语言。 SQL 最初发明于 1970 年。它是一种用于数据库创建、删除、获取和

修改行等的数据库语言。有时,它的发音为“sequel”。 我们还可以使用它来处理由实体(变

量)和数据的不同实体之间的关系组成的有组织的数据。

2、SQL是什么时候出现的?

SQL 于 1974 年首次出现。它是维护关系数据库最常用的语言之一。 1986年,SQL成

为1987年美国国家标准协会(ANSI)和ISO(国际标准化组织)的标准。

3、SQL的用途是什么?

SQL 负责维护数据库中存在的关系数据和数据结构。 下面给出了一些常见的用法: 对

数据库执行查询;从数据库中检索数据;在数据库中插入记录;更新数据库中的记录;从数

据库中删除记录;创建新数据库;在数据库中创建新表;在数据库中创建视图;对数据库执

行复杂的操作;

4、SQL 是否支持编程语言功能?

SQL 指的是标准查询语言。 因此,SQL 确实是一种语言,但实际上并不支持编程语言。

它是一种没有循环、条件语句和逻辑运算的通用语言。 它不能用于数据操作以外的任何事

情。 它是一种执行数据库操作的命令语言。 SQL 的主要目的是检索、操作、更新、删除和

执行复杂的操作,例如对数据库中存在的数据进行连接。

5、SQL 的子集是什么?

以下是 SQL 的四个重要子集: 数据定义语言 (DDL):它定义了由 CREATE、ALTER、DROP

等命令组成的数据结构。数据操作语言(DML):用于操作数据库中的现有数据。 此类别中的

命令是:SELECT、UPDATE、INSERT 等。数据控制语言 (DCL):它控制对存储在数据库中的数

据的访问。 此类别中的命令包括 GRANT 和 REVOKE。事务控制语言(TCL):用于处理数据库

中的事务操作。

6、DDL 语言的目的是什么?

DDL代表数据定义语言。 它是数据库的子集,在创建数据库时定义了数据库的数据结

构。 例如,我们可以使用 DDL 命令来添加、删除或修改表。 它由以下命令组成:CREATE、

ALTER 和 DELETE 数据库对象,例如模式、表、索引、视图、序列等。

7、DML 语言的目的是什么?

数据操作语言使用户能够检索和操作关系数据库中的数据。 DML 命令只能对数据执行

只读操作。 我们可以使用 DDL 语言执行以下操作: 通过 INSERT 命令将数据插入数据库。

通过 SELECT 命令从数据库中检索数据。通过 UPDATE 命令更新数据库中的数据。通过

DELETE 命令从数据库中删除数据。

8、DCL 语言的目的是什么?

数据控制语言允许用户控制对数据库的访问和权限管理。 它是数据库的子集,它决定

了在什么时间点哪个用户应该访问数据库的哪个部分。 它包括两个命令,GRANT 和

REVOKE。 GRANT:它使系统管理员能够将权限和角色分配给特定用户帐户,以在数据库上

执行特定任务。REVOKE:它使系统管理员能够撤销用户帐户的权限和角色,以便他们无法使

用先前分配的数据库权限。

9、数据库中的表和字段是什么?

表是一组以行和列的形式组织的数据。 它使用户能够以结构格式存储和显示记录。 它

类似于电子表格应用程序中的工作表。 这里的行指的是元组,代表简单的数据项,列是特

定行中存在的数据项的属性。 列可以归类为垂直,行是水平的。字段是为表提供结构的组

件。 它以相同的数据类型存储相同类别的数据。 一个表包含固定数量的列,但可以有任意

数量的行,称为记录。 它也被称为数据库表中的列。

10、什么是主键?

主键是唯一标识表中每条记录的字段或字段组合。 它是一种特殊的唯一键。 如果该列

包含主键,则它不能为 null 或为空。 一个表可以有重复的列,但不能有多个主键。 它始

终将唯一值存储到列中。 例如,学生编号 可以被视为大学或学院学生的主键。

11、什么是外键?

外键用于将一个或多个表链接在一起。 它也称为引用键。 外键被指定为与另一个表的

主键相关的键。 这意味着一个表中的外键字段引用另一个表的主键字段。 它唯一地标识另

一个表的每一行,以保持参照完整性。 主键-外键关系是一个非常关键的关系,因为它有时

会维护数据库的 ACID 属性。 它还可以防止会破坏子表和父表之间链接的操作。

12、唯一键是什么?

唯一键是确保列中存储的所有值都是唯一的单个字段或字段组合。 这意味着列不能存

储重复值。 此键为列或列集提供唯一性。 例如,学生表的电子邮件地址和学号应该是唯一

的。 它可以接受一个空值,但每列只能接受一个空值。 它确保列或列组的完整性,以将不

同的值存储到表中。

13、主键和唯一键有什么区别?

主键和唯一键都是 SQL 的基本约束。 它们之间的主要区别在于主键标识表中的每条

记录。 相反,唯一键可防止列中出现重复条目,但 NULL 值除外。 下面的对比图解释得更

清楚: 主键 唯一键 主键充当表中每条记录的唯一标识符。 当表中不存在主键时,唯一键

也是记录的唯一标识符。 不能在主键列中存储 NULL 值。 可以在唯一键列中存储 NULL 值,

但只允许一个 NULL。 无法更改或删除主键列值。 可以修改唯一键列的值。

14、什么是数据库?

数据库是有组织的数据集合,结构化为表、行、列和索引。 它可以帮助用户经常找到

相关信息。 它是一个电子系统,使数据访问、数据操作、数据检索、数据存储和数据管理

变得非常容易。 几乎每个组织都使用数据库来存储数据,因为它易于访问且易于操作。 该

数据库提供了对数据的完美访问,并让我们执行所需的任务。

15、DBMS 是什么?

DBMS代表数据库管理系统(Database Management System)。 它是一个软件程序,主要

用作数据库和最终用户之间的接口。 它为我们提供了管理数据、数据库引擎和数据库模式

等功能,几乎可以立即使用简单的查询来促进数据的组织和操作。 它就像一个文件管理器,

用于管理数据库中的数据,而不是将其保存在文件系统中。 如果没有数据库管理系统,用

户访问数据库的数据将变得更加困难。

16、有哪些不同类型的数据库管理系统?

数据库管理系统可以分为几种类型。

17、什么是关系数据库管理系统?

RDBMS 代表关系数据库管理系统。 它是一个基于关系模型的数据库管理系统。 它有

助于您使用关系运算符来操作存储在表中的数据。 RDBMS 将数据存储到表集合中,并在需

要时使用关系运算符轻松链接这些表。 关系数据库管理系统的示例有 Microsoft Access、

MySQL、SQL Server、Oracle 数据库等。

18、什么是数据库中的规范化?

规范化用于通过组织数据库的字段和表来最小化冗余和依赖性。数据库规范化有一些规

则,俗称Normal From,它们是: 第一范式(1NF)第二范式(2NF)第三范式(3NF)Boyce-Codd 范

式(BCNF) 使用这些步骤,可以消除数据库中数据的冗余、异常、不一致。

19、标准化的主要用途是什么?

规范化主要用于添加、删除或修改可以在单个表中进行的字段。 规范化的主要用途是

消除冗余并消除插入、删除和更新干扰。 规范化将表分成小分区,然后使用不同的关系链

接它们以避免冗余的机会。

20、不执行数据库规范化有什么缺点?

主要缺点是: 数据库中出现冗余项会造成磁盘空间的浪费。由于多余的术语,也可能

出现不一致的情况。 如果对一个表的数据进行了任何更改,但对另一表的相同数据没有进

行更改,则会出现不一致。 这种不一致将导致维护问题并影响 ACID 属性。

21、什么是不一致的依赖?

不一致的依赖关系是指由于数据路径丢失或损坏而导致获取相关数据的困难。 它导致

用户在错误的表中搜索数据,导致错误作为输出。

22、什么是数据库中的非规范化?

非规范化是数据库管理员用来优化其数据库基础架构效率的一种技术。 非规范化概念

基于规范化,规范化定义为为特定目的将数据库正确排列到表中。 这种方法允许我们将冗

余数据添加到规范化数据库中,以缓解将多个表中的数据合并到单个表中的数据库查询问

题。 它将冗余项添加到表中以避免复杂的连接和许多其他复杂的操作。 非规范化并不意味

着不会进行规范化。 这是在标准化过程之后发生的优化策略。

23、SQL 运算符有哪些类型?

运算符是为执行特定操作而保留的特殊关键字或特殊字符。它们也用于 SQL 查询。我

们主要可以在 SQL 命令的 WHERE 子句中使用这些运算符。它是根据指定条件过滤数据的

命令的一部分。 SQL 运算符可分为以下几种类型: 算术运算符:这些运算符用于对数值数

据执行数学运算。此运算符的类别是加法 (+)、减法 (-)、乘法 (*)、除法 (/)、余数/模数 (%)

等。逻辑运算符:这些运算符计算表达式并以 True 或 False 返回结果。

24、SQL中的视图是什么?

视图是没有值的数据库对象。 它是一个虚拟表,包含表中的数据子集。 它看起来像一

个包含行和列的实际表,但它占用的空间更少,因为它实际上并不存在。 它的操作与基表

类似,但不包含自己的任何数据。 它的名字总是独一无二的。 一个视图可以包含来自一个

或多个表的数据。 如果基础表中发生任何更改,视图中也会反映相同的更改。 视图的主要

用途是实现安全机制。 它是可搜索的对象,可以在其中使用查询来搜索视图。 它只显示创

建视图时声明的查询返回的数据。

25、SQL中的索引是什么?

索引是与加速行检索的表或视图相关联的磁盘结构。 它降低了查询的成本,因为查询

的高成本会导致其性能下降。 它用于提高性能并允许更快地从表中检索记录。 索引减少了

我们需要访问以查找特定数据页的数据页数。 它还具有唯一值,这意味着索引不能重复。

索引为每个值创建一个条目,从而可以更快地检索数据。 例如:假设有一本书载有国家的

详细信息。 如果您想了解有关中国景点的信息,为什么要浏览那本书的每一页? 可以直接

去索引。 然后从索引中,可以转到提供有关中国景点的所有信息的特定页面。

26、SQL中有哪些不同类型的索引?

SQL 索引只不过是一种最小化查询成本的技术。 查询的成本越高,查询的性能就越差。

以下是 SQL 支持的不同类型的索引: 唯一索引聚集索引非聚集索引位图索引正常指数综

合指数B树索引基于函数的索引

27、什么是唯一索引?

UNIQUE INDEX 用于强制单个或多个列中值的唯一性。可以在一个表中创建多个唯一索

引。 为了创建唯一索引,用户必须检查列中的数据,因为当表的任何列具有唯一值时,都

会使用唯一索引。 如果列是唯一索引的,则此索引不允许该字段具有重复值。 定义主键时,

可以自动应用唯一索引。可以使用以下语法创建它: CREATE UNIQUE INDEX index_name ON

table_name (index_column1, index_column2,...);

28、SQL中的聚集索引是什么?

聚集索引实际上是存储行数据的表。 它根据只能按一个方向排序的键值来确定表数据

的顺序。 每个表只能有一个聚集索引。 它是唯一的索引,在生成主键时自动创建。 如果

需要在表中进行许多数据修改,则首选聚集索引。

29、SQL中的非聚集索引是什么?

PRIMARY 索引(聚集索引)以外的索引称为非聚集索引。我们知道在生成主键时会自动创

建聚集索引,而在查询中使用多个连接条件和各种过滤器时会创建非聚集索引。 非聚集索

引和表数据都存储在不同的地方。 它不能改变表的物理顺序并保持数据的逻辑顺序。 创建

非聚集索引的目的是为了搜索数据。 最好的例子是一本书,内容写在一个地方,索引在另

一个地方。可以在每个表中创建 0 到 249 个非聚集索引。 非聚集索引提高了使用键而不

分配主键的查询的性能。

30、SQL、MySQL 和 SQL Server 之间有什么区别?

以下比较图表说明了它们的主要区别: | SQL | MySQL | SQL Server || SQL 或结构化查

询语言对于管理关系数据库很有用。用于查询和操作数据库。 | MySQL 是用于管理关系数

据库的流行数据库管理系统。它是一个快速、可扩展且易于使用的数据库。| SQL Server是

一个RDBMS数据库系统,主要为Windows系统开发,用于存储、检索和访问开发者请求的

数据。|| SQL 最早出现于 1974 年。| MySQL 最早出现于 1995 年 5 月 23 日。| SQL

31、SQL 和 PL/SQL 有什么区别?

以下比较图表说明了SQL 和 PL/SQL的主要区别: SQL PL/SQL SQL 是一种数据库结构

化查询语言,用于与关系数据库进行通信。 它由 IBM Corporations 开发,于 1974 年首次

出现。PL/SQL 或 Procedural Language/Structured Query Language 是 SQL 的一种方言,用于

增强 SQL 的功能。甲骨文公司在 90 年代初开发了它。它使用 SQL 作为其数据库语言。

SQL 是一种声明性和面向数据的语言

32、是否可以使用列别名对列进行排序?

可以。可以使用 ORDER BY 中的别名方法代替 WHERE 子句对列进行排序。

33、SQL中的聚集索引和非聚集索引有什么区别?

索引是一种非常快速地获取请求数据的方法。 SQL中的索引主要有两种,聚簇索引和

非聚簇索引。 从 SQL 性能的角度来看,这两个索引之间的差异非常重要。 以下比较图表

说明了它们的主要区别: 聚集索引 非聚集索引 聚集索引是存储行数据的表或视图。在关

系数据库中,如果表列包含主键,MySQL 会自动创建一个名为 PRIMARY 的聚集索引。

PRIMARY 索引(聚集索引)以外的索引称为非聚集索引。它具有与数据行分开的结构。非聚集

索引也称为二级索引。 聚集索引存储数据信息和数据本身。

34、显示当前日期的 SQL 查询是什么?

SQL中有一个内置函数GetDate(),用于返回当前时间戳。

35、 SQL 中有哪些常用的 SQL 连接?

SQL 连接用于将多个表中的数据检索到有意义的结果集中。 每当需要从两个或多个表

中获取记录时都会执行此操作。 它们与 SELECT 语句和连接条件一起使用。

36、SQL 中有哪些不同类型的连接?

连接用于合并两个表或从表中检索数据。 这取决于表之间的关系。

37、SQL 中的 INNER JOIN 是什么?

内连接只返回表中符合指定条件的记录,并隐藏其他行和列。 简而言之,当找到表之

间的至少一个匹配行时,它会获取行。 INNER JOIN 关键字连接来自两个表的匹配记录。 它

被假定为默认连接,因此在查询中使用 INNER 关键字是可选的。

38、SQL 中的Right JOIN是什么?

Right JOIN用于从右侧表中检索所有行,并且仅从另一个表中检索满足连接条件的那些

行。 即使左侧表中没有匹配项,它也会返回右侧表中的所有行。 如果它从左侧表中找到不

匹配的记录,则返回 Null 值。 此联接也称为右外部联接。

39、SQL中的左连接是什么?

Left Join 用于获取左侧表中的所有行以及指定表之间的公共记录。 即使右侧表中没有

匹配项,它也会返回左侧表中的所有行。 如果它不会从右侧表中找到任何匹配的记录,则

返回 null。 此连接也可以称为左外连接。

40、SQL 中的完全联接是什么?

完全连接是左右连接组合的结果,包含两个表中的所有记录。 当任何一个表中存在匹

配的行时,它会获取行。 这意味着它返回左侧表中的所有行和右侧表中的所有行。 如果未

找到匹配项,则设置 NULL 值。

41、SQL 中的“触发器”是什么?

触发器是一组驻留在系统目录中的 SQL 语句。 它是一种特殊类型的存储过程,可自动

调用以响应事件。 它允许我们在针对特定表运行插入、更新或删除命令时执行一批代码,

因为触发器是每当向系统提供 DML 命令时激活的操作集。SQL 触发器有两个主要组件,一

个是动作,另一个是事件。 当采取某些行动时,会因这些行动而发生事件。使用 CREATE

TRIGGER 语句在 SQL 中创建触发器。

42、什么是自连接(SELF JOIN)?自连接的要求是什么?

SELF JOIN 用于将表与其自身连接。 这种连接可以使用表别名来执行,这样我们就可以

避免在一个句子中重复相同的表名。 如果我们在单个查询中多次使用相同的表名而不使用

表别名,它将引发错误。 当我们想要将数据与同一表本身中的其他数据组合时,需要使用

SELF JOIN。 将层次结构转换为平面结构通常非常有用。

43、SQL中的集合运算符是什么?

使用集合运算符来合并来自一个或多个同类型表的数据。 尽管集合运算符类似于 SQL

连接,但有一个显着的区别。 SQL 连接组合来自不同表的列,而 SQL 集合运算符组合来自

不同查询的行。 包含集合操作的 SQL 查询称为复合查询。 SQL 中的集合运算符分为四种

不同类型: A. UNION:它将来自多个 SELECT 查询的两个或多个结果组合到一个结果集中。

它具有从表中删除重复行的默认功能。

44、SQL中 IN 和 BETWEEN 运算符有什么区别?

以下比较图表说明了SQL中 IN 和 BETWEEN 运算符的主要区别: BETWEEN 运算符

IN 运算符 此运算符用于选择两个值之间的数据范围。 这些值也可以是数字、文本和日期。

它是一个逻辑运算符,用于确定一组值中是否存在特定值。 此运算符减少了对查询使用多

个 OR 条件。 它返回列值位于定义范围之间的记录。 它比较指定列的值,并在值集中存在

匹配项时返回记录。

45、什么是约束? 它的各个级别分别是什么?

约束用于指定允许或限制哪些值/数据将存储在表中的规则和规定。 它确保表内数据的

准确性和完整性。 它强制我们存储有效数据并阻止我们存储不相关的数据。 如果约束和数

据动作之间发生任何中断,则动作失败。 一些最常用的约束是:NOT NULL、PRIMARY KEY、

FOREIGN KEY、AUTO_INCREMENT、UNIQUE KEY 等。

46、如何编写 SQL 查询以查找以“A”开头的学生姓名?

可以编写以下查询来获取姓名以 A 开头的学生详细信息: SELECT * FROM student

WHERE stud_name like 'A%'; 这是一个演示示例,其中有一个名为 student 的表,其中包含

两个以“A”字符开头的名称。

47、编写 SQL 查询以从 employees 表中获取员工的第三个最高薪水。假设 employees

表字段如下:

id,name,salary,performance

以下查询是获取员工第三个最高薪水的最简单方法: SELECT * FROM `employees` ORDER

BY `salary` DESC LIMIT 1 OFFSET 2 下面是演示如何获得员工的第三个最高薪水的演示示例:

以下是获得员工第三高薪水的替代方法: A. 使用 LIMIT 关键字 SELECT salary FROM

employees ORDER BY salary DESC LIMIT 2, 1; B. 使用子查询 SELECT

48、SQL 中的 DELETE 和 TRUNCATE 语句有什么区别?

它们之间的主要区别在于 delete 语句删除数据而不重置表的身份,而 truncate 命令重

置特定表的身份。 下面的对比图表解释得更清楚: 序号 DELETE truncate 1 delete 语句根

据指定条件从现有表中删除单行或多行。 truncate 命令删除现有表的全部内容,而不删除

表本身。 它保留了表结构或模式。 2 DELETE 是一个 DML 命令。

49、数据库中的 ACID 属性是什么?

ACID 属性适用于通过不同任务组的事务。事务是数据的单一逻辑顺序。它提供了在数

据库中事务前后保持一致性的属性。它还确保数据事务在数据库系统中得到可靠处理。ACID

属性是原子性、一致性、隔离性和持久性的首字母缩写词。 原子性(Atomicity):确保事务单

元内的所有语句或操作都必须成功执行。如果事务的一部分失败,则整个事务失败,数据库

状态保持不变。

50、空格或零是否与 NULL 值相同?

NULL 值与零或空格不同。 以下几点解释了它们的主要区别: NULL 值是“不可用、未

分配、未知或不适用”的值。 它将在没有任何价值的情况下使用。可以对其进行算术运算。

另一方面,零是数字,空格被视为字符。NULL 值可以被视为未知和缺失值,但零和空格与

NULL 值不同。可以将一个空格或零与另一个空格或零进行比较。 另一方面,一个 NULL 可

能与另一个 NULL 不同。 NULL 表示未提供数据或不存在数据。

51、SQL 中的函数及其用法是什么?

SQL 函数是在数据库系统中经常使用和重用的简单代码片段,用于数据处理和操作。

函数是测量值。 它总是执行特定的任务。 创建函数时应记住以下规则: 函数应该有名字,

名字不能以@、$、#或其他类似字符等特殊字符开头。函数只能与 SELECT 语句一起使用。

每次调用函数时,它都会编译。函数必须返回值或结果。函数总是与输入参数一起使用。 SQL

将函数分为两类: 用户定义函数:用户根据需要创建的函数称为用户定义函数。系统定义

函数:定义由系统定义的函数称为系统定义函数。 它们是内置的数据库函数。

52、大小写操作函数是什么?在 SQL 中的有哪些类型?

大小写操作函数是字符函数的一部分。 它将数据从已经存储在表中的状态转换为大写、

小写或混合大小写。 此函数执行的转换可用于格式化输出。 我们几乎可以在 SQL 语句的

每个部分使用它。 大小写操作函数主要用于当需要搜索数据时,不知道要查找的数据是小

写还是大写。

53、什么是字符操作函数?在 SQL 中有哪些类型的字符操作函数?

字符操作函数用于更改、提取和更改字符串。 当一个或多个字符和单词被传递给函数

时,函数将对这些输入字符串执行操作并返回结果。 以下是 SQL 中的字符操作函数:

CONCAT:此函数用于将两个或多个值连接在一起。 它总是将第二个字符串附加到第一个字

符串的末尾。

54、NVL() 函数的用途是什么?

NVL()函数用于将 NULL 值转换为其他值。 如果第一个参数为 NULL,则该函数返回第

二个参数的值。 如果第一个参数不是 NULL,则保持不变。 这个函数在 Oracle 中使用,而

不是在 SQL 和 MySQL 中。 MySQL 有 IFNULL() 而不是 NVL() 函数,SQL Server 有 ISNULL()

函数。

55、在 SQL 中哪个函数用于除法运算符中返回余数?

MOD 函数在除法运算中返回余数。

56、COALESCE()函数的语法和用法是什么?

COALESCE() 函数按顺序计算参数并返回指定数量的表达式中的第一个 NON-NULL 值。

如果它将参数评估为 NULL 或未找到任何 NON-NULL 值,则返回 NULL 结果。COALESCE 函

数的语法如下: COALESCE (exp1, exp2, .expn)

57、如何使用 DISTINCT 语句?它的用途是什么?

DISTINCT 关键字用于确保获取的值始终具有唯一值。 它不允许有重复的值。 DISTINCT

关键字与 SELECT 语句一起使用,并从表的列中检索不同的值。 我们可以借助以下语法来

使用它: SELECT DISTINCT column_lists FROM table_name WHERE [condition]; 假设有一个表

‘customer’,其中包含 8 条记录,其中 name 列有一些重复值。

58、使用 ORDER BY 子句的默认数据顺序是什么? 如何改变?

ORDER BY 子句用于按升序或降序对表数据进行排序。 默认情况下,它将按升序对表格

进行排序。 如果想改变它的默认行为,需要在 ORDER BY 子句中的列名之后使用 DESC 关

键字。 执行此操作的语法如下: SELECT expressions FROM tables WHERE conditions ORDER BY

expression [ASC | DESC]; 在前面的示例中,采用了一个客户表。

59、以下查询是否返回输出?

SELECT subject_code, AVG (marks)

FROM Students

WHERE AVG(marks) > 70

GROUP BY subject_code;

上面的查询不会返回输出,因为我们不能使用 WHERE 子句来限制组。 需要使用

HAVING 子句而不是 WHERE 子句来获得正确的输出。

60、WHERE 和 HAVING 子句有什么区别?

主要区别在于 WHERE 子句用于在建立任何分组之前过滤记录,而 HAVING 子句用于

过滤组中的值。 下面的比较图表解释了最常见的差异: WHERE HAVING WHERE子句在行操

作中实现。 HAVING子句在列操作中实现。 WHERE不允许使用聚合函数。 HAVING可以与

聚合函数一起使用。 WHERE子句可与 SELECT、UPDATE 和 DELETE 语句一起使用。 此子

句只能与 SELECT 语句一起使用。

61、SQL 中有多少个聚合函数可用?

聚合函数用于确定和计算表中的多个值,并将结果作为单个数字返回。 例如,所有值

的平均值、所有值的总和以及特定值分组中的最大值和最小值。以下语法说明了如何使用聚

合函数: function_name (DISTINCT | ALL expression) SQL 提供七 (7) 个聚合函数,如下所示:

AVG():此函数用于返回指定列的平均值。COUNT():该函数用于返回表格行数,包括空值的

行。MAX():该函数用于返回组中的最大值。

62、什么是 SQL 注入?

SQL 注入是网站和 Web 应用程序代码中的一种漏洞,允许攻击者控制后端操作以及访

问、检索和销毁数据库中的敏感数据。 在这种技术中,恶意 SQL 语句被插入到数据库条目

字段中,一旦执行,数据库就容易受到攻击者的攻击。 该技术通常用于访问敏感数据并通

过利用数据驱动的应用程序对数据库执行管理活动。 它也被称为 SQLi 攻击。 SQL注入的

一些常见示例是: 访问机密数据以修改 SQL 查询以获得所需的结果。UNION 攻击从不同

的数据库表中窃取数据。检查数据库以提取有关数据库版本和结构的信息。

63、RANK() 和 DENSE_RANK() 函数有什么区别?

RANK 函数确定结果集中有序分区中每一行的排名。 如果这两行被分配了相同的排名,

那么排名中的下一个数字将是它的前一个排名加上一些重复的数字。 例如,如果我们有 3

个第 4 级的记录,则列出的下一个排名将是第 7 级。 DENSE_RANK 函数根据指定的列值

为分区内的每一行分配一个唯一的排名,没有任何间隙。 它总是按连续顺序指定排名。 如

果这两行被分配了相同的排名,这个函数将给它分配相同的排名,并且下一个排名是下一个

序号。 例如,如果我们有 3 条记录位于第 4 级,则列出的下一个排名将是第

64、是否可以为标识列隐式插入一行?

是的。可以为标识列隐式插入一行。

65、SQL 注释是什么?

注释是程序员可读的 SQL 查询中的解释或注释。 它用于使 SQL 语句更易于人类理解。

在解析 SQL 代码的过程中,它会被忽略。 注释可以写在单行或跨多行。 单行注释:它以

两个连续的连字符 (--) 开头。多行注释:以 /* 开头,以 */ 结尾。

本文标签: 数据数据库函数用于表中