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

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

约束用于指定数据类型限制。可以创建或更改表语句时指定它。...一个只能有一个聚集索引,而它却可以有许多非聚集索引。 Q14。编写SQL查询以显示当前日期? SQL中,有一个名为GetDate()内置函数,该函数有助于返回当前时间戳/日期。 Q15。...交叉联接产生两个叉积或笛卡尔积,而自然联接基于两个中具有相同名称和数据类型所有列。 Q28。什么是SQL查询? 子查询是另一个查询查询其中定义了查询以从数据库中检索数据或信息。...列出一些SQL大小写操作函数? SQL中有三种大小写处理函数,分别是: LOWER:此函数以小写形式返回字符串。它以字符串作为参数,并将其转换为小写形式返回。...视图是一个虚拟,由中包含数据子集组成。由于不存在视图,因此占用空间更少。视图可以合并一个或多个数据,取决于关系。 Q55。视图用途是什么? 视图是指基于或另一个视图逻辑快照。

6.4K22

Mysql常见知识点【新】

2、MySQL技术特点是什么?   MySQL数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库多线程SQL服务器、不同后端、广泛应用程序编程接口和管理工具。...LAST_INSERT_ID返回由Auto_increment分配最后一个值,并且不需要指定名称。  27、你怎么看到为表格定义所有索引?   ...行数可以通过以下代码获得:   SELECT COUNT(user_id)FROM users; 32、Mysql查询是否区分大小写?   ...MySql中,使用以下代码查询显示前50行:   SELECT*FROM   LIMIT 0,50; 44、可以使用多少列创建索引?   任何标准最多可以创建16个索引列。...因此,在这种情况下,能被存储salary列中范围是从-9999999.99到9999999.99。ANSI/ISO SQL92中,句法DECIMAL(p)等价于DECIMAL(p,0)。

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

去 BAT 面试,总结了 55 道 MySQL 面试题!

2、Mysql技术特点是什么? Mysql数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库多线程SQL服务器、不同后端、广泛应用程序编程接口和管理工具。...9、Mysql中ENUM用法是什么? ENUM是一个字符串对象,用于指定一组预定义值,并可在创建时使用。...LAST_INSERT_ID返回由Auto_increment分配最后一个值,并且不需要指定名称。 27、你怎么看到为表格定义所有索引?...行数可以通过以下代码获得: SELECT COUNT(user_id)FROM users; 32、Mysql查询是否区分大小写?...因此,在这种情况下,能被存储salary列中范围是从-9999999.99到9999999.99。ANSI/ISO SQL92中,句法DECIMAL(p)等价于DECIMAL(p,0)。

17.8K20

SQL命令 CREATE INDEX(二)

更具体地说,确保了索引(以及包含索引)中两条记录不能具有相同排序值。 默认情况下,大多数索引使用大写字符串排序(使搜索区分大小写)。...通过类定义中定义索引,可以为各个索引指定不同字符串排序规则。 可以更改名称空间默认排序规则,使字段/属性默认情况下区分大小写。...位图索引由一个或多个位字符串组成,其中位位置表示行id,每个位值表示该行字段(或合并字段名字段值)特定值存在(1)或不存在(0)。...SQL使用这个索引来提高COUNT(*)性能,它返回中记录(行)数量。 一个最多可以一个位图扩展索引。...但是,某些情况下,可能希望显式重新生成索引。 注意:如果其他用户正在访问数据,则在重建索引时必须采取其他步骤。如果这样做,可能会导致查询结果不准确。

64220

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

Show Plan语句文本显示或缓存查询中未显示注释。返回多个结果集查询文本框中编写SQL代码后,可以单击“显示计划”按钮查看SQL代码而执行SQL代码。...如果行列包含数据(NULL),结果集将显示一个空白表格单元格。 指定一个字符串文本将显示一个HostVar_字段,其中包含一个空白表格单元格。...一个指定聚合函数和选择行查询总是显示Row count: 0并且不返回结果,即使该查询只指定不引用FROM子句表达式和子查询。...筛选器字符串可以SQL语句列中找到字符串(比如表名),也可以执行时间列中找到字符串(比如日期)。 过滤字符串区分大小写。 显式地更改过滤器字符串之前,它将一直有效。...对从Show History中检索到SQL语句进行任何更改,都会将其作为新语句存储Show History中; 包括不影响执行更改,如更改字母大小写、空格或注释。

8.3K10

MySQL8 中文参考(八十三)

此外,由于更改基于格式传播和应用,意味着它们以优化和紧凑格式接收,并且与原始成员相比,可能减少所需 IO 操作次数。 总结一下,您可以通过将无冲突事务分布到组中不同成员来扩展处理能力。...这与关系型数据库中工作并将产品存储中有所不同,因为向数据库添加任何产品之前,必须知道和定义所有列。... MySQL 中,意味着: 创建一个新文档(插入或添加) 读取一个或多个文档(查询) 更新一个或多个文档 删除一个或多个文档 22.3 JavaScript 快速入门指南:用于文档存储...较早 8.0 版本或 5.7 版本 MySQL 服务器中,在这种情况下不会设置_id值,因此您必须明确指定它。如果指定,MySQL Shell 将返回错误 5115 文档缺少必需字段。...避免使用字符串拼接在查询中引入值,这可能会产生无效输入,并且某些情况下可能会导致安全问题。 您可以使用占位符和bind()方法创建保存搜索,然后可以使用不同值调用它们。

7210

2022年Java秋招面试必看 | MySQL调优面试题

图片 42、Mysql 技术特点是什么? Mysql 数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库多线程 SQL 服务器、不同后端、广泛应用程序编程接口和管理工具。...REGEXP 是模式匹配,其中匹配模式搜索值任何位置。 51、CHAR 和 VARCHAR 区别? 图片 52、列字符串类型可以是什么? 图片 53、如何获取当前 Mysql 版本?...LAST_INSERT_ID返回由 Auto_increment 分配最后一个值,并且不需要指定名称。 67、你怎么看到为表格定义所有索引?...图片 90、解释访问控制列表 图片 91、MYSQL 支持事务? 图片 92、mysql 里记录货币用什么字段类型好 图片 图片 93、MYSQL 数据什么情况下容易损坏?...图片 96、唯一索引比普通索引快, 为什么 图片 97、MySQL由哪些部分组成, 分别用来做什么 图片 98、MySQL查询缓存有什么弊端, 应该什么情况下使用, 8.0版本对查询缓存有什么变更.

2.8K30

去 BAT 面试,总结了 50 道 MySQL 面试题!

7、Mysql中ENUM用法是什么? ENUM是一个字符串对象,用于指定一组预定义值,并可在创建时使用。...LAST_INSERT_ID返回由Auto_increment分配最后一个值,并且不需要指定名称。 21、你怎么看到为表格定义所有索引?...行数可以通过以下代码获得: SELECT COUNT(user_id)FROM users; 26、Mysql查询是否区分大小写?...Mysql中,使用以下代码查询显示前50行: SELECT*FROM LIMIT 0,50; 38、可以使用多少列创建索引? 任何标准最多可以创建16个索引列。...因此,在这种情况下,能被存储salary列中范围是从-9999999.99到9999999.99。ANSI/ISO SQL92中,句法DECIMAL(p)等价于DECIMAL(p,0)。

3.1K20

如何在Ubuntu 16.04上使用MySQL全文搜索提高搜索效果

该数据库索引是一种数据结构,提高了数据检索操作性能。该索引与主数据分开存储。它会以额外写入和相对较少存储空间为代价更新内容任何更改。...现在已创建此索引,它将由更改内容任何SQL查询更新。 接下来,尝试使用MATCH() ,AGAINST()功能对“Seattle beach”进行全文搜索。...您可以通过更改关键字来查看结果来尝试其他搜索。 现在您可以SQL查询中使用FTS函数来查找与搜索输入相关行,您可以使这些结果更具相关性。...您可以更改截止值以继续微调结果。例如,如果您使用0.1 而不是0截止,则仅返回第2行。 使用IN BOOLEAN 第二步中,您在指定查询字词时使用了默认IN NATURAL LANGUAGE模式。...以下命令返回结果,其中出现“travel”和“miles”字样,它们之间字数超过2个。

2.4K40

Mysql服务器SQL模式 (官方精译)

创建数据并将其插入分区后,更改服务器SQL模式可能会导致此类行为发生重大变化,并可能导致数据丢失或损坏。强烈建议您一旦创建了使用用户定义分区表格,就不要更改SQL模式。...ANSI模式还会导致服务器返回一个查询错误,其中S具有外部引用 集合函数 无法在外部查询所针对外部查询集合中进行聚合。...但是,由于先前行已被插入或更新,所以结果是部分更新。为了避免这种情况,可以使用单行语句,可以更改情况下中止。...以下情况下,您将遇到与SQL模式更改相关复制兼容问题: MySQL 5.6主站和5.7从站 基于语句复制 如前所述,SQL语句MySQL 5.6和5.7中产生不同结果...要处理这种兼容性,请使用以下解决方法之一: 使用基于复制 使用 IGNORE MySQL 5.6和5.7中使用SQL语句不会产生不同结果SQL模式 存储程序(

3.3K30

高性能 MySQL 第四版(GPT 重译)(二)

调整设置以有效处理大量连接和小查询通常更为重要。其中一个更常见调整是更改本地端口范围。Linux 系统有一系列可用本地端口。当连接返回给调用者时,它使用本地端口。...您可以将所有美元金额乘以一百万,并将结果存储BIGINT中,避免浮点存储不精确性和精确DECIMAL数学成本。 字符串类型 MySQL 支持多种字符串数据类型,每种类型都有许多变体。...在这种情况下,转换这些列看起来是一个好主意,只要它们不必连接到 VARCHAR 列。设计中,通常使用“查找”与整数主键来避免连接中使用基于字符值。...很容易解释:我们索引允许 InnoDB 返回 1 行而不是 202 行。 将索引查询与全扫描进行比较是不公平。...复制阶段不使用触发器跟踪更改,而是作为副本连接到您集群副本之一,并将基于复制日志作为更改日志消耗。 使用 gh-ost 进行模式更改时需要仔细考虑一件事是您现有数据库是否使用外键。

21910

SQL定义(一)

如果模式不存在,则InterSystems SQL创建模式,并将、视图或存储过程分配给它。...存储IRIS_Shard模式中项不会通过编目查询或INFORMATION_SCHEMA查询显示。...当不同名称空间具有不同默认架构名称时,DefaultSchema()方法将返回当前名称空间默认架构名称。注意:当更改默认SQL模式名称时,系统将自动清除系统上所有名称空间中所有缓存查询。...通过更改默认模式名称,可以更改所有包含非限定、视图或存储过程名称查询含义。 强烈建议安装InterSystems IRIS时建立默认SQL模式名,以后不要修改。模式名用于生成相应类包名。...包含特定于平台模式名当创建一个基于odbc查询以通过Mac上Microsoft query从Microsoft Excel运行时,如果从可用表列表中选择一个,则生成查询不包括该模式(相当于类

1.2K10

MySQL 8.0中新增功能

允许用户更改优化器开关情况下控制单个查询索引合并行为。...通过不与SQL混合,新提示可以查询字符串许多地方注入。他们提示(vs指令)方面也有更清晰语义。 JSON MySQL 8.0增加了新JSON函数,并提高了排序和分组JSON值性能。...用户可以使用SQL查询函数返回结果为常规关系,例如join,project和aggregate。...例如,撤消空间可以放在快速存储上。 回收异常大型交易占用空间(在线)。创建至少两个撤销空间以允许空间截断。允许InnoDB收缩撤消空间,因为一个撤消空间可以被激活而另一个被截断。...某些情况下,元数据大小可能比实际结果数据大小大得多,元数据不需要。我们可以通过完全禁用这些数据生成和存储来显着加快查询结果传输速度。

2.3K30

SQL岗位30个面试题,SQL面试问题及答案「建议收藏」

Autoincrement是一个关键字,用于中插入新记录时生成数字。 SQLConstraints(约束)是什么? 它可用于设置中数据类型限制。创建或更新表语句时,可以使用约束。...并且非集群索引情况下,该可以具有多个索引,为创建一个对象,该是搜索后指向一个点。 什么是Trigger(触发器)?...为了操作字符串,我们使用字符串函数。其中一些是: · LEN()——返回长度。 · LOWER()——将字符数据转换为小写。 · UPPER()——将字符数据转换为大写。...Null值是没有值字段。它与0不同。假设有一个,并且中有一个字段,可以添加值情况下将记录插入字段,然后该字段将以NULL值保存。 空格是我们提供值。 0只是一个数字。...中,应该只有一个主键,但在另一种情况下,唯一键可以为任意数量。 主键不允许NULL值,但唯一键允许NULL值。

4.2K31

【建议收藏】MySQL 三万字精华总结 + 面试100 问(一)

主要完成一些类似于连接处理、授权认证、及相关安全方案。该层上引入了线程池概念,为通过认证安全接入客户端提供线程。同样该层上可以实现基于SSL安全链接。...客户端请求 —> 连接器(验证用户身份,给予权限) —> 查询缓存(存在缓存则直接返回,不存在则执行后续操作) —> 分析器(对SQL进行词法分析和语法分析操作) —> 优化器(主要对执行sql优化选择最优执行方案方法...,数据备份、恢复啥,让我一个 Javaer 搞的话,加钱?...跟 InnoDB 事务特性有关,由于多版本并发控制(MVCC)原因,InnoDB “应该返回多少行”也是不确定。...例如,char非常适合存储密码MD5值,因为这是一个定长值。对于非常短列,char比varchar存储空间上也更有效率。 ❝ 列字符串类型可以是什么?

47310

SQL Server 执行计划缓存

SQL Server 执行计划包含下列主要组件: 查询计划 执行计划主体是一个重入只读数据结构,可由任意数量用户使用。称为查询计划。查询计划中不存储用户上下文。...如果用户执行查询其中一个结构未使用,将会用新用户上下文重新初始化该结构。 怎样缓存执行计划 SQL Server 有一个高效算法,可查找用于任何特定 SQL 语句现有执行计划。...SQL Server自动删除执行计划 什么情况下会删除执行计划 没有人工手动清除缓存情况下,如果出现内存不足情况下SQL Server会自动清除一部分没被利用到缓存计划。...此后,必须为执行查询一个连接重新编译新计划。导致计划无效情况包括: 对查询所引用或视图进行更改(ALTER TABLE 和 ALTER VIEW)。 对执行计划所使用任何索引进行更改。...对键大量更改(其他用户对由查询引用使用 INSERT 或 DELETE 语句所产生修改)。 对于带触发器,插入或删除行数显著增长。

1.9K90

T-SQL进阶:超越基础 Level 9:动态T-SQL代码

我通过处理一个WHILE循环,同时寻找不同字符串“Test”开头。对于每个,我发现以“Test”开头,我构造了存储变量@CMD中DELETE命令。...假设我应用程序有一个数据选择屏幕,最终用户可以输入一个包含在ProductName中文本字符串,然后应用程序将返回包含输入文本字符串所有Product表格记录。...(请注意,这个过程可能是不使用动态SQL情况下编写。我在这里使用动态SQL来说明潜在问题。) 为了演示如何使用这个存储过程,我可以通过运行清单5中代码来执行它。...我传递这些附加字符允许我限制我查询,只返回ProductName列中具有“Red”产品,ID值为1.通过允许我存储过程@EnteredText参数中使用未编辑文本,可以让我 该参数中注入额外字符...允许我参数后面注释掉我存储过程可能包含任何字符或代码。 对于我最后一个例子,我将执行一个破坏性TSQL注入攻击。 查看Listing 8中代码以查看我破坏性TSQL注入命令。

1.9K20

使用嵌入式SQL(五)

嵌入式SQL中使用以下ObjectScript特殊变量。这些特殊变量名称区分大小写。在过程启动时,这些变量将初始化为一个值。它们由嵌入式SQL操作设置。不能使用SET或NEW命令直接设置它们。...某些情况下,特定SQLCODE错误代码可能与一个以上%msg字符串相关联,描述了生成SQLCODE不同条件。 %msg还可以接受用户定义消息字符串。...当触发器代码显式设置%ok = 0来中止触发器时,最常用于从触发器发出用户定义消息。当执行SQL代码时,将使用有效NLS语言生成错误消息字符串可以不同NLS语言环境中编译SQL代码。...可更新游标是其中顶部FROM子句仅包含一个元素(单个名或可更新视图名)游标。如果游标不可更新,则%ROWID保持不变。...任何一个查询返回一个或多个数据行(SQLCODE = 0),然后到达数据末尾(SQLCODE = 100),在这种情况下,输出主机变量设置为返回最后一行字段值。 %ROWCOUNT> 0。

2.6K20

SQL命令 UPDATE(二)

SQL命令 UPDATE(二) 显示到逻辑数据转换 数据以逻辑模式格式存储。 例如,日期存储为整数天数,时间存储为从午夜开始秒数,%List存储为编码字符串。...时计算并存储UPDATE时更改值。...防止更新操作直接更改一个值,该值是涉及其他字段值计算结果。 本例中,试图使用UPDATE覆盖计算字段值将导致SQLCODE -138错误。...但是,可能希望修改一个计算字段值,以反映对一个(或多个)源字段值更新。 可以通过使用更新触发器来实现这一点,该更新触发器您更新了指定源字段之后重新计算计算过字段值。...它更新Employees那些记录,其中可以Requirees中找到相同EmpId: UPDATE Employees AS Emp SET retired='Yes'

1.8K30

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券