首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【21】进大厂必须掌握的面试题-65个SQL面试

什么是唯一键? 唯一标识的一。 每个允许多个值。 允许为空值。 Q11。什么是外键? 外键通过强制两个的数据之间的链接来维护引用完整性。...左连接: MySQL的左连接用于返回左所有,但仅返回右满足连接条件的匹配。 右连接: MySQL的右连接用于返回右所有,但仅返回满足连接条件的左的匹配。...完全联接: 当任何中都存在匹配时,完全联接将返回所有记录。因此,它将返回左侧所有和右侧所有。 Q16。您所说的非规范化是什么意思?...DROP命令删除,并且不能从数据库回滚,而TRUNCATE命令删除所有。 Q22。解释不同类型的规范化。 有许多连续的标准化级别。这些称为范式。每个连续的范式取决于前一个范式。...交叉联接和自然联接有什么区别? 交叉联接产生两个的叉积或笛卡尔积,而自然联接基于两个具有相同名称和数据类型的所有列。 Q28。什么是SQL的子查询?

6.4K22

MySQL-多表操作

连接查询 交叉连接 交叉连接返回的结果是被连接的两个所有数据的笛卡尔积。...在标准的SQL交叉连接(CROSS JOIN)与内连接(INNER JOIN)表示的含义不同,前者一-般只连接的笛卡尔积,而后者则是获取符合ON筛选条件的连接数据。...它用于返回连接关键字(RIGHT JOIN)右(主表)中所有的记录,以及左()符合连接条件的记录。 当右的某行记录在左没有匹配的记录时,左相关的记录将设为空值。...外键约束 添加外键约束 外键指的是-一个引用另一个的一列或多列,被引用的列应该具有主键约束或唯一性约束, 从而保证数据的一-致性 和完整性。 ➢被引用称为主表。...语法第一的参数“index_ col_ name, …”表示中外键名称列表。.

3.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

SQL命令 SELECT(一)

SQL命令 SELECT(一) 数据库的一个或多个检索。...FROM table-ref - 可选的——对一个或多个引用,从中检索数据。 每个FROM子句需要一个有效的table-ref,即使SELECT不引用。...选择由指定一个或多个单独的标量表达式或引用所有列的星号(*)组成。 FROM子句指定要从其中检索的一个或多个、视图或子查询。 这些可以通过JOIN表达式关联。...在SQL,对于任何引用数据的SELECT,需要一个带有有效引用的FROM子句。 对于不访问数据的SELECT, FROM子句是可选的。...任何类型的DISTINCT子句都可以指定多个来测试唯一性。 列出一个以上的将检索两个组合不同的所有。 DISTINCT认为NULL是唯一的值。

5.3K10

PDF Explained(翻译)第三章 文件结构

我们可以认为交叉引用由以下几部分组成:一个表示条目数的标题, 然后是一个特殊条目,接下来的每行对应文件的一个对象。...因此,我们也可以随机访问交叉引用。 Trailer trailer的第一是关键字trailer。...459 //交叉引用的字节偏移量 %%EOF //文件结束标记 文件末尾向后读取trailer:找到文件结束标记, 提取交叉引用的字节偏移量,然后解析trailer字典。...文件末尾逆向检索,找到文件结束标记。然后读取trailer字典以及交叉引用开关位置的字节偏移。 读取交叉引用获取每个对象在文件的位置。...删除PDF未被其它对象引用的对象。这样可以避免写入无用的对象。 1至n,重新对对象进行编号,其中n是文件对象的个数。 1号对象开始,逐个输出对象。

1.3K40

SQL命令 CREATE TABLE(五)

当试图引用删除一时,ON DELETE子句定义应该对引用采取什么操作。 ON UPDATE子句定义被引用的更新规则。...SET DEFAULT-删除或更新被引用的键值时,将检查所有引用,以查看是否有任何引用要删除或更新的。如果是,则该操作会导致引用要删除或更新的的外键字段设置为该字段的默认值。...需要注意的是,在包含缺省值条目的被引用必须存在一。 CASCADE -删除被引用的行时,将检查所有引用,以查看是否有任何引用要删除的。...如果是这样,则删除操作会导致其外键字段引用要删除的也被删除。 在被引用更新的键值时,将检查所有引用,以查看是否有任何引用要更新的。...如果是,则更新会导致引用要更新的的外键字段将更新级联到所有引用定义不应该有两个不同名称的外键,这两个外键引用相同的标识符-公共字段并执行相互矛盾的引用操作。

1.7K50

Power Query 真经 - 第 10 章 - 横向合并数据

在它们下面的第 3 和第 4 ,可以看到【右反】连接,这表示右的记录在左没有匹配。此连接非常有用,因为它是所有未匹配的完整列表。...10.3 笛卡尔积(交叉连接) 无论将其称为 “交叉” 连接、“多对多” 连接或其正式名称 “笛卡尔积”,这种连接类型包括两个获取单个值并创建一组包含所有可能的组合。...在每个要合并的。 连接到数据源并执行任何所需的清洗步骤。 转到【添加列】【自定义列】。 使用 “MergeKey” 作为列名,公式输入 “=1”。 右击其中一个引用】。...本例的目标是获取一个包含固定每月费用的,并为一年的每个月创建一个预算,如图 10-26 所示。 图 10-26 快速创建直线预算 使用上面的方法,准备各自的数据开始。...就这样,“Price” 不再存在,但订单数量的价格以及作为所需输出一部分的收入存在,如图 10-36 所示。

4.1K20

这是我见过最有用的Mysql面试题,面试了无数公司总结的(内附答案)

引用于加快查询的性能。它可以更快地检索数据。 可以在一个列或一组列上创建索引。 18.所有不同类型的索引是什么?...2.不相关:不相关子查询是其中外部查询和内部查询彼此独立的子查询。 26.局部变量和全局变量有什么区别? 局部变量: 局部变量只能在函数内部使用或存在。这些变量未被任何其他功能使用或引用。...Delete和Truncate之间的区别是 删除 截短 Delete语句用于删除。可以回滚。 Truncate语句用于删除所有并释放包含的空间。它不能回滚。...让我们看一下重要的SQL查询以进行面试 76.如何获取唯一记录?...Select * from table_name; 82.如何数据库获取所有的列表?

27K20

一文搞懂PDF格式

交叉引用 交叉引用是PDf文件内部一种特殊的文件组织方式,可以很方便的根据对象号随机访问一个对象。...,xref是开始标志,表示以下为一个交叉引用的内容;每个交叉引用又可以分为若干个子段,每个子段的第一是两个数字,第一个是对象起始号,后面是连续的对象个数,接着每行是这个子段的每个对象的具体信息——...上面这个交叉引用一共有3个子段,分别有1个,1个,3个对象,第一个子段的对象不可用,其余子段对象可用。...文件尾 通过trailer可以快速的找到交叉引用的位置,进而可以精确定位每一个对象;还可以通过它本身的字典还可以获取文件的一些全局信息(作者,关键字,标题等),加密信息,等等。...一个PDF文件,如果被更新过,则会有多个对象集合、交叉引用、trailer,最后一个trailer的这个字段记录了之前所有对象的个数。这个值必须是直接对象。

13K53

20道BAT面试官最喜欢问的JVM+MySQL面试题(含答案解析)

GC 的两种判定方法: 引用计数法:指的是如果某个地方引用了这个对象就+1,如果失效了就-1,当为 0 就 会回收但是 JVM 没有用这种方式,因为无法判定相互循环引用(A 引用 B,B 引用 A) 的情况...(所有关系型数据库系 统满足第一范式数据库的字段都是单一属性的,不可再分) 2....普通索引: 即针对数据库创建索引 2. 唯一索引: 与普通索引类似,不同的就是:MySQL 数据库索引列的值 必须唯一,但允许有空值 3. 主键索引: 它是一种特殊的唯一索引,不允许有空值。...列出某个数据库内所有: show tables; 7. 获取所有 Field 对象的名称和类型 :describe table_name; 6.mysql 的复制原理以及流程。...InnoDB 锁是通过给索引上的索引加锁来实现的,这一点 MySQL 与 Oracle 不同,后者是通过在数据块对相应数据加锁来实现的。

71300

精通Excel数组公式14:使用INDEX函数和OFFSET函数创建动态单元格区域

通过指定参数row_num为空或0,告诉Excel返回所选列的所有。 同理,想要获取整行,则需要指定参数row_num的值代表行号,将参数column_num指定为空或0。...这告诉Excel需要返回所选所有列。 ?...图2:对于不同数据类型查找最后一 在图2所示的公式[2]至[6],展示了一种近似查找值的技术:当要查找的值比单元格区域中的任何值大且执行近似匹配(即MATCH函数的第3个参数为空)时,将总是获取列表中最后一个相对位置...在单元格F2的VLOOKUP公式单元格区域A2:C5查找并返回相应的数据。...,而是获取该区域中最后一的单元格地址(单元格引用)。

8.8K11

这份PHP面试题总结得很好,值得学习

如果组所有操作成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。...快速访问数据的特定信息,提高检索速度、 创建唯一性索引,保证数据库每一数据的唯一性、 加速之间的连接、 使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。...: 交叉连接又叫笛卡尔积,它是指不使用任何条件,直接将一个所有记录和另一个所有记录一一匹配。...内连接:则是只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合条件的记录不会出现在结果集中,即内连接只连接匹配的。...外连接:其结果集中不仅包含符合连接条件的,而且还会包括左、右或两个所有数据,这三种情况依次称之为左外连接,右外连接,和全外连接。

5K20

使用管理门户SQL接口(二)

应用筛选器或模式下拉列表中选择模式。 可以使用Filter字段通过输入搜索模式来筛选列表。 可以在一个模式或多个模式筛选模式,或筛选/视图/过程名()。...例如,S*返回所有以S S*开头的模式。 Person返回所有以S. *开头的模式所有Person。 Person*返回所有模式以Person开头的所有。...可以使用逗号分隔的搜索模式列表来选择满足所列模式(或逻辑)的任何一种的所有。 例如,* .Person * *。 Employee*选择所有模式所有Person和Employee。...每个列出的模式提供指向其关联、视图、过程和查询(缓存的查询)列表的链接。 如果模式没有该类型的,则在该模式列表列显示一个连字符(而不是命名链接)。 这使能够快速获得关于模式内容的信息。...只有当当前的某个字段对另一个有一个或多个引用时,引用才会出现在信息。 这些对其他引用作为指向所引用信息的链接列出。

5.1K10

示例讲字典(Dictionary):获取唯一

标签:VBA,Dictionary 字典(Dictionary)是一种通过键(key)和(item)(注:键和是字典的术语)存储唯一的方法。...它是一种基于唯一键存储数据的极好工具,它的强大之处在于可以使用键来存储和合并数据。 在本文中,讲解如何在字典捕获一个单元格区域并将其引用回Excel。...这里,将存储一个10的单元格区域,然后只输出该区域中唯一的项目。 示例如下图1所示。获取其数据区域,使用字典将数据存储,然后使用VBA数组提取我们选择需要获取唯一值的列。...图2 下面的VBA代码数据单元格区域中生成唯一数据。它将从数组的当前区域获取数据,并将数据汇总到一个唯一值列表,输出到所选择的单元格区域内。...然后,一个简单的For循环遍历数组的数据。 .Item允许引用数组(ar),并将唯一数据放入字典

4.8K50

MySQL基础(快速复习版)

三、数据库存储数据的特点 1、数据存放到,然后再放到库 2、一个库可以有多张,每张具有唯一名用来标识自己 3、中有一个或多个列,列又称为“字段”,相当于java“属性” 4、的每一数据...分组后的筛选order by 排序列表limit 子句; 特点: ①查询的结果=主表中所有,如果和它匹配的将显示匹配,如果没有匹配的则显示null ②left join 左边的就是主表,...right join 右边的就是主表 full join 两边都是主表 ③一般用于查询除了交集部分的剩余的不匹配的 3、交叉连接 语法: select 查询列表from 1 别名cross join...主键和唯一 1、区别: ①、一个至多有一个主键,但可以有多个唯一 ②、主键不允许为空,唯一可以为空 2、相同点 具有唯一支持组合键,但不推荐 外键: 1、用于限制两个的关系,的字段值引用了主表的某字段值...2、外键列和主表的被引用列要求类型一致,意义一样,名称无要求 3、主表的被引用列要求是一个key(一般就是主键) 4、插入数据,先插入主表 删除数据,先删除 可以通过以下两种方式来删除主表的记录

4.5K20

Extreme DAX-第4章 上下文和筛选

在 Excel “上面的获取一个值是很常见的。当你意识到 Power BI 模型之间没有严格的顺序时,就很容易理解这个问题了。 只有少数 DAX 函数专门用于在行上下文中工作。...当度量公式引用包含许多值的列,且未指定用于获取单一结果的 min、max、count 或 sum 等聚合时,可能发生这种情况。概念上讲,原因是所选内容有可能包含多个值。...ALL:此函数可以将一个或多个列或者是一个作为参数。它会指定的列删除筛选器,或者引用所有删除筛选器。...,并且由于 VALUES 该列获取唯一值,因此 VALUES(Cities[CityID])具有该列的数据沿袭。...但是,某些函数允许以奇怪的方式形成新的,这在数据沿袭方面可能存在问题。例如,UNION 函数允许两个源获取来组合成为一个新的,这两个可能具有冲突的数据沿袭。

5.4K20

Excel省市交叉销售地图

唯一有些区别的是XY坐标不再是固定的31省市,而是按照不同省份筛选出来的省内各地市坐标;此外,将本省内之外的所有交叉销量统称为省外。...步骤二:准备相应素材 2.1准备原始数据:将原始数据用数据透视处理成如下格式 ---- ---- ---- 注: 1)字段是经销商所在城市,列字段是客户所在城市; 2)和列均有总计,目的是后期计算省外的交叉销售数值...步骤三:定义名称动态引用图表 ---- Step1:将省份切片器选择的省份名称,赋值给在”各省交叉销售地图“工作B2单元格。 Step2:交叉销售=INDEX(省市交叉销售!...B:B,MATCH(各省交叉销售地图!B2,省市交叉销售!A:A,0)) Step:3:在”各省交叉销售地图“工作随便插入一张图片,调好尺寸。...J4,城市交叉!A1: 这样便可以计算出下表,省外的倾入倾出数值,并将其显示在下表。 3)在切换省份后,城市清单有更新,故需更新其透视以及其切片器。

5.6K10

Extreme DAX-第 2 章 模型设计

在进行数据分析时,您往往不会单个检索所有列的数据,相反,您可能对同时多个获取数据感兴趣,并且往往只分析其中的一列或几列数据。...最大的麻烦可能产生于多个不同的数据源获取数据时。让我们设想这么一个场景,我们不仅有销售数据,还有目标数据。将来自不同数据源的数据合并到一个扁平的数据需要花费大量精力。...的每一都有一个标识符或键(key),可以实现固定地引用其他;例如,在图2.3所示的销售订单,可以只包含客户和产品的键,而无需包含所涉及的客户和产品的所有属性。...将一对多关系的两个位置换一下就是多对一关系。 关系可以具有一对一基数,这意味着在关系的两端,键都是唯一的。默认情况下,一对一关系的交叉筛选器方向是两个。因此,在几乎所有情况下这两个充当一个。...1.相互依存的维度 什么是维度?在数据仓库,维度是一个其中包含有关存储在事实数据的事实的描述性属性。

3.4K10

Citus 分布式 PostgreSQL 集群 - SQL Reference(创建和修改分布式 DDL)

每个创建的分片分配有一个唯一的分片 ID,并且它的所有副本具有相同的分片 ID。...每个分片在工作节点上表示为一个名为 tablename_shardid 的常规 PostgreSQL 其中 tablename 是分布式的名称,shardid 是分配给该分片的唯一 ID。...(在某些情况下,为了减少迁移工作,用户甚至可以选择与租户关联但当前缺少租户 ID 的创建引用。) 需要跨多个列的唯一约束并且足够小的。...由于分布式系统的性质,Citus 不会交叉引用工作节点之间的唯一性约束或引用完整性。...Citus 支持本地到引用所有外键引用操作,但不支持反向支持 ON DELETE/UPDATE CASCADE(引用本地)。 主键和唯一性约束必须包括分布列。

2.7K20

MySQL 约束

:可以作用在多个列上,不与列一起,而是单独定义 根据约束所起的作用,约束可分为: 主键约束 主键约束确保的每一具有唯一标识符,能够唯一标识该的每条记录。...在括号列出了构成主键的一个或多个列。主键是用于唯一标识每一的一个或多个列的组合。这些列的值必须唯一且不为空。 index_option:这是可选的部分,用于指定主键索引的选项。...这意味着 id 列将唯一标识每一。 创建唯一约束 建时在字段后使用 UNIQUE 创建唯一约束。 例如,在用户信息,要避免的用户名重名,就可以把用户名列设置为唯一约束。...接下来的三个约束是列约束:每个约束都出现在列定义,因此只能引用正在定义的列。 其中约束是明确命名的。 MySQL 为另外两个分别生成一个名称。 最后两个约束是约束。 其中之一已被明确命名。...,用户可以通过查询该获取该数据库的约束信息。

17810

SQL命令 DELETE(一)

如果未提供WHERE CURRENT OF子句(或WHERE子句),则DELETE将从删除所有。 描述 DELETE命令满足指定条件的删除。...可以直接删除、通过视图删除或删除使用子查询选择的。通过视图删除受要求和限制的约束,如创建视图中所述。...尝试锁定删除行将导致SQLCODE-110错误,错误代码为%msg,如下所示:无法获取用于删除ID为‘10’的‘Sample.Person’的锁。...%NOINDEX -禁止删除要删除所有索引的索引。使用时应格外小心,因为它会在索引留下孤立值。用户必须具有当前命名空间的相应%noindex管理权限才能应用此限制。...在删除操作期间,对于每个外键引用,都会在被引用的相应获取一个共享锁。此行将被锁定,直到事务结束。这可确保引用的行在可能回滚删除之前不会更改。

2.7K20
领券