高频sql面试问题
表是在具有列和行的模型中设计的数据集合。在一个表中,列数是指定的,称为字段,但行数没有定义,称为记录。
数据库是用于访问、存储和检索数据的有序信息集。
DBMS是一个控制数据维护和使用的程序。它被认为是管理数据的文件管理器。有四种类型的DBMS:
最有用的数据库管理系统是关系数据库管理系统。它为数据提供了一个关系运算符。
SQL命令分为以下几种类型:
它包含一个或多个表中的行和列,可以定义为虚拟表。它消耗更少的内存。
语法:
Join用于从相关的行和列中检索数据。它在两个或多个表之间工作,并且从两个表中至少返回一个匹配。
连接类型是:
数据库查询是数据库表中的数据请求。该查询可以是选择查询或任何其他类型的查询。
子查询是查询的一部分。外部查询知道主查询,内部查询识别子查询。总是先执行子查询,然后将结果传递给主查询。
Autoincrement是一个关键字,用于在向表中插入新记录时生成数字。
它可用于设置表中数据类型的限制。创建或更新表语句时可以使用约束。一些限制是:
SQL中有不同类型的键:
规范化是一种以减少数据依赖性的方式排列表的设计技术。它将表格分成小模块,并根据关系将它们链接起来。
非规范化是一种优化方法。我们将冗余数据添加到表中,并在规范化后应用它。
存储过程是一组SQL语句,用作访问数据库的函数。为了减少网络流量和提高性能,我们使用存储过程。
语法:
索引用于提高查询的性能。它可以更快地从表中检索数据。您可以在一组列上创建索引。
聚集索引——它有助于轻松地检索数据,一个表只分配一个聚集索引。它改变了记录在数据库中的保存方式。
非聚集索引-非聚集索引比聚集索引慢。在非聚集索引的情况下,表可以有多个索引。它为表创建一个对象,这个对象是一个在搜索后指向表的点。
触发器用于对表执行特定的操作,如插入、更新或删除。它是一个存储过程。动作和事件是触发器的主要组成部分。执行操作时,会出现一个事件来响应该操作。
通常,这些属性被称为ACID。它们促进了数据库事务。
在一个事务中连接两个或多个独立的数据块,或者所有的数据块都是专用的,或者都不是。
一致性——如果出现任何令人失望的情况,事务要么生成一个新的有效数据状态,要么在事务开始之前将所有数据返回到其状态。
I solution-正在进行但尚未提交的事务必须继续与任何其他操作隔离。
可维护性——在这个操作中,系统保存提交的数据,每次事件失败并且系统启动时,所有的数据都在正确的位置。
SQL语句分为几类:
它被定义为通过为查询提供条件来设置结果集的限制。他们从整张唱片中滤掉了几行。
一些SQL子句是WHERE和HAVING。
这是一个返回单个值的数学函数。
SQL中的聚合函数有:
为了操作字符串,我们使用字符串函数。其中一些是:
排序规则是一组通过比较确定数据排序方式的规则。例如,使用一组规则存储字符数据,这些规则定义了正确字符的顺序以及类型、重音和大小写。
在系统内存中执行SQL语句时,会创建一个名为Cursor的临时工作区。在select语句中,游标存储信息。游标可以使用多行,但一次只能处理一行。这组行称为活动集。
有两种类型的光标:
SQL server是Microsoft关系数据库管理系统(RDBMS)的一种类型或示例。它在IT环境中提供了广泛的事务处理和商业智能。
运算符是一个保留字,主要用在SQL语句的WHERE子句中进行运算。
空值是没有值的字段。和零不一样。假设您有一个表,并且表中有一个字段。您可以在不添加值的情况下向字段中插入记录,然后该字段将以空值保存。
空白是我们提供的价值。
零只是一个数字。
数据仓库被称为来自多个信息源的中央数据中心。这些数据可以用于在线处理和挖掘。
在表中,应该只有一个主键,但在另一种情况下,可以有任意数量的唯一键。
主键不允许空值,但唯一键允许。