b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

MySql面试问题和答案

电脑杂谈  发布时间:2020-06-14 19:27:56  来源:网络整理

sql语句面试常见问题_sql基本面试问题_常见sql语句

随着技术的进步和发展,访问员对访问员的要求越来越高. 现在,只要是后端开发职位,面试肯定会询问有关的知识,而MySQL是当前最受欢迎的免费关系管理系统无疑是许多公司面试的重点. 今天,Awei将为大家总结mysql面试问题;

常见sql语句_sql语句面试常见问题_sql基本面试问题

交易原子性(atomicity)的基本特征: 交易必须被视为不可分割的最小工作单元,整个交易中的所有操作要么全部成功提交,要么全部失败回滚,可能不会只执行其中一些操作,这是事务的原子性. 一致性: 的总数从一种一致状态变为另一种一致状态. 隔离: 公司所做的更改在其他事务最终提交之前对其他事务不可见. 持久性: 提交事务后,所做的更改将永久保存在中. 此时,即使系统崩溃,修改后的数据也不会丢失. 事务隔离级别,mysql的默认隔离级别是什么?读取未提交(Read uncommitted),一个事务可以读取另一个未提交事务的数据,最低级别,在任何情况下都不保证. 提交读操作后,一个事务只能在提交另一个事务后才能读取数据,以避免发生脏读. 可重复读(Repeatable read)意味着当您开始读取数据(事务开始)时,不再允许进行修改操作,这可以避免脏读和不可重复读. 序列化(可序列化)是最高的事务隔离级别. 在此级别,对事务进行序列化,以避免脏读取,不可重复读取和幻像读取.

sql基本面试问题_常见sql语句_sql语句面试常见问题

但是,此事务隔离级别效率低下,并且消耗了性能. 通常不使用. Mysql的默认隔离级别为“可重复读取”. 讨论脏读取,不可重复读取,魔术读取脏读取: 事务A读取事务B更新的数据,然后B回滚该操作,然后A读取的数据为脏数据;不可重复读取: 事务A两次读取相同的数据,并且事务B在多次读取事务A期间更新并提交了数据,导致事务A多次读取了相同的数据,因此数据读取两次此交易将不一致;幻像读取: 幻像读取解决了非重复读取sql语句面试常见问题,并保证查询结果是同一事务中事务开始时的状态(一致性);数据表类型是什么: MyIASM,InnoDB,HEAP,ISAM,MERGE,DBD和Gemeni(通常只知道前两个)innodb引擎4个主要功能答案: 插入缓冲区(插入缓冲区);两次写入(double write);自适应哈希索引(AHI);提前阅读(提前阅读)在其上实现的InnoDB引擎的行锁是什么?答: 基于索引; Myisam和innodb在Mysql中的区别在于,InooDB至少支持五点交易,但是MyISAM不支持交易; InnoDB支持行级锁,而MyISAM支持表级锁; InnoDB支持MVCC,而MyISAM不支持; InnoDB支持外键,但MyISAM不支持; InnoDB不支持全文索引,而MyISAM支持. Myisam支持,InnoDB无法通过直接复制表文件将表复制到另一台机器. InnoDB表支持多种行格式,myisam不支持; InnoDB是一个索引组织表,而myisam是一个堆表. myisam或innodb选择count(*)会更快,原因为何: Myisam更快,因为myisam内部维护着一个可以直接调用的计数器.

sql基本面试问题_sql语句面试常见问题_常见sql语句

的三个主要范例. 第一种普通形式: 表中的字段都是单一属性,不能被划分(以保持数据的原子性);第二范式: 第二范式必须符合第一范式,并且非主属性必须完全取决于主键. 第三范式: 在满足第二范式的基础上,实体中的其他实体中没有非主键属性,传递函数取决于主键属性,以确保数据表中数据的每一列与主键直接相关,但与间接键不直接相关(表中的字段[non-primary key]与主键没有传递依赖关系)至少可以通过五种方式讨论可以想到的sql语句优化为了避免选择*,请列出需要查找的字段;使用联接代替子查询;拆分大型delete或insert语句;使用限制限制查询结果的记录;使用存在代替in是一个不错的选择;将HAVING子句替换为Where子句,因为HAVING将仅检索所有记录. 不要在where子句中的“ =”的左侧执行函数,算术运算或其他表达式运算,否则系统可能无法正确使用索引,并尝试避免对where子句中的字段进行空值判断,否则它将导致引擎放弃索引并执行全表扫描;尝试避免在where子句中使用or子句来加入条件,否则将导致引擎放弃索引并执行全表扫描;尽量避免在where子句中使用! =或<>运算符,否则引擎将放弃索引并执行全表扫描;谈论您可以想到的表结构优化,至少要为每种表设置一个ID至少五种(在构建表时不要设置主键;应该关闭程序);选择正确的存储引擎;使用可以存储数据的最小数据类型,整数<日期,时间

sql语句面试常见问题_常见sql语句_sql基本面试问题

例如,int类型存储时间类型,bigint类型转换为ip函数;使用合理的字段属性长度,定长表会更快. 使用enum,char代替varchar;使用not null尽可能定义字段(为空字段设置默认值);尽可能少使用文字;为经常使用和查询的字段建立适当的索引;谈谈mysql中的一些常用功能答案: sum,count,avg,min,max说一些您在mysql中常用的命令,除了添加,删除和修改. 答: 解释,描述,显示,截断一些常见的关键字,除了添加,删除和修改. : 不同,限制,偏移,排序依据,联合,所有联合,之间,分组依据; union和union all之间的区别在于重复的结果: 表链接后UNION会过滤掉重复的记录,Union All将不会删除重复的记录;排序处理: 联合将按字段顺序排序; UNION ALL在合并两个结果之后简单地返回结果;从效率的角度来看,UNION ALL比UNION varchar(100)和varchar快得多(200)之间的区别答案: varchar(100)最多可以存储100个字符,varchar(200)最多可以存储200个字符, varchar(100)和(200)存储hello占用相同的空间,但是后者在排序More memory时会消耗,因为col的排序使用fixed_length来计算col的长度(内存引擎也相同). varchar(20)和int(20)是否具有相同的含义?答: 否,前者表示最多可存储20个字符,后者表示最多可显示20个字符,但存储空间仍占据4个字节的存储空间,且存储范围未更改;存储过程是什么?什么叫?答: 该存储过程是一个预编译的SQL语句. 优点是它允许模块化设计,这意味着它只需要创建一次,就可以在程序中多次调用.

如果一个操作需要执行多个SQL,则使用存储过程比简单的SQL语句要快. 您可以使用命令对象来调用存储过程. 什么是触发器?触发器的作用是什么?答: 触发器是一种特殊的存储过程,主要由事件执行. 它可以强制执行约束以维护数据完整性和一致性,并且可以跟踪中的操作以允许未经授权的更新和更改. 可以级联. 例如,一个表上的触发器包含另一个表上的数据操作,该操作将导致表触发器被触发. 存储过程和触发器之间的区别答案: 触发器与存储过程非常相似,触发器也是SQL语句集,两者之间的唯一区别是触发器不能使用EXECUTE语句调用,而是在用户执行Transact-SQL时自动触发语句(激活)执行. 触发器是在修改指定表中的数据时执行的存储过程. 通常,通过创建触发器来强制执行不同表中逻辑相关数据的参照完整性和一致性. 由于用户无法绕过触发器,因此可以使用它来执行复杂的业务规则以确保数据完整性. 触发器与存储过程不同. 触发器主要由事件执行触发,存储过程可以直接通过存储过程名称的名称来调用. 在表上执行诸如UPDATE,INSERT和DELETE之类的操作时,SQLSERVER将自动执行触发器定义的SQL语句,以确保数据处理必须符合这些SQL语句定义的规则.

什么是索引?它的优缺点是什么?答: 索引是一个特殊的查找表,搜索引擎可以使用该表来加快数据检索的速度. 它与现实生活中的书籍目录非常相似,您可以查找所需的数据而无需查询整本书. 索引可以是唯一的. 创建索引使您可以指定单列或多列. 缺点是它减慢了数据输入的速度,同时也增加了的大小. MySQL的主要索引类型: 普通索引: 最基本的索引,它没有限制;唯一索引: 索引列的值必须是唯一的,但允许为空值. 如果是组合索引,则列值的组合必须唯一;主键索引: 是一个特殊的唯一索引,一个表只能有一个主键,不允许为空值;组合索引: 是指在多个字段上创建的索引,只有在查询条件中使用创建索引的第一个字段时,才使用索引. 使用组合索引时,请遵循最左边的前缀集;全文索引: 主要用于查找文本中的关键字,而不是直接与索引中的值进行比较,mysql中的MyISAM支持全文索引,而InnoDB不支持;在查询A时使用like'a%',like'%a',like'%a%'将使用索引: 'a%'将使用索引,其他两个将不使用;使用索引注意事项索引将不包含NULL列,复合索引只要一列包含NULL值,则此列对该符合索引无效;使用短索引为字符串建立索引,如果可以,则应指定前缀长度;短索引不仅可以提高查询速度,还可以节省磁盘空间和I / O操作. mysql查询仅使用一个索引,因此的默认排序可以满足要求. 不要使用排序操作,请尽量不要包括多列排序,如有必要,最好为这些列建立一个复合索引;如上所述,注意喜欢;不对列执行计算;不要使用NOT IN,<> ,! =操作,但<,<=,=,>,> =,BETWEEN,IN可用于索引;应该在经常执行选择操作的字段上建立索引;应当在字段上建立索引,并进行唯一值比较;定义为文本,图像和位数据类型的列不应建立索引;出现在何处和联接处的列需要索引;如果在where子句中使用查询函数,例如: where DAY(column)= ...),则mysql将无法使用索引;在联接操作中(当您需要从多个数据表中提取数据时),mysql只能在主键和外键的数据类型相同时使用索引,否则索引将无法及时使用;说到什么是外键,优缺点答: 外键是指外键约束,目的是保持数据的一致性,完整性,并控制外键表中存储的数据.

将两个表关联起来,外键只能引用外表中的列的值;优点: 本身保证了数据的一致性,完整性和更高的可靠性,因为程序很难保证100%的数据完整性,并且即使在服务器处于运行状态时,使用外键也可以最大程度地保证数据的一致性和完整性. 故障或发生其他问题. 使用主键和外键进行设计可以提高ER图的可读性,这在设计中非常重要. 外键描述的业务逻辑在一定程度上将使设计周到而全面. 缺点: 您可以使用触发器或应用程序来确保数据完整性;过分强调或使用外键会增加开发难度,导致表太多,难以更改业务,难以扩展等;数据管理简单,不使用外键时不进行操作方便,高性能(导入和导出操作,在插入,更新,删除数据时更快);当您选择使用外键时,为什么要回答: 我的业务逻辑非常简单,一旦确定了业务,就不容易更改sql语句面试常见问题,表结构简单,当业务量大时,我将选择使用外键小. 因为当不满足上述条件时,外键将影响业务的扩展和修改. 当数据量巨大时,将严重影响添加,删除和修改检查的效率. 什么是观点?什么是游标?视图是具有与物理表相同功能的虚拟表. 您可以添加,更改,检查和操作视图. 视图通常是一个表或多个表的行或列的子集. 对视图的修改不会影响基本表.

与多表查询相比,它使我们更容易获取数据. 游标: 将以查询为单位有效地处理结果集. 光标可以位于单元中的特定行,并从结果集的当前行中检索一个或多个行. 您可以修改结果集的当前行. 通常不使用游标,但是当您需要一一处理数据时,游标非常重要. mysql是否有rowid?答: 否,如果InnoDB没有定义主键,则将在内部生成主键号rowid,但无法查询. 在通常的InnoDB表创建中,我们最好自己确定主键,以防止在每次插入数据之前生成rowid. MySQL如何为查询期间找到的数据设置一个自增序列号?设置@ i = 0; SELECT(@i: = @ i + 1)别名FROM表,(SELECT @i: = 0)AS别名;如何使用解释来优化SQL和索引?解释sql; table: 显示该数据行与哪个表有关;类型: 这是一个重要的列,显示了使用的连接类型. 从最佳到最差的连接类型为const,eq_reg,ref,range,index和ALL;全部: 全表扫描; MySQL将遍历整个表以查找匹配的行; index: 索引扫描; index和all之间的区别是: 索引类型仅遍历索引; range: 索引范围扫描,索引扫描从某个点开始,并返回与该值匹配的行,以及带有<,>等的常见查询; ref: 非唯一索引扫描,返回单个匹配项通常使用非唯一索引找到所有值的行,即唯一索引的非唯一前缀; eq_ref: 唯一索引扫描,对于每个索引键,表中只有一条记录与之匹配,通常用于主键或唯一索引扫描;常量,系统: 当MySQL优化查询的一部分并将其转换为常量时,将使用这些访问类型. 如果主键放在where列表中,MySQL可以将查询转换为常量;可能的键: 显示可能应用于此表中的索引;如果为空,则没有可能的索引;您可以从WHERE语句中为相关字段选择合适的语句;键: 使用的实际索引;如果为NULL,则不使用索引;在极少数情况下,MySQL会选择一个未优化的索引. 在这种情况下,您可以在SELECT语句中使用USE INDEX(索引名)来强制使用索引,或者使用IGNORE INDEX(索引名)来强制MySQL忽略索引key_len: 在不损失准确性的情况下,时间越短越好; ref: 显示使用索引的哪一列(如果可能),是一个常量; rows: MySQL认为必须检查以返回请求的数据的行数;附加: 有关MySQL如何解析查询的其他信息;以上是阿维(A Wei)对mysql面试问题的临时总结. 当然,mysql所能提出的要求不只此而已,但我们都是后端开发人员,而不是的DBA. 因此,这30个问题可以满足大多数程序员的需求. 当然,如果您想更好地复习与mysql相关的知识,则需要做更多的书面测试问题并编写更多的sql;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-245351-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 萧宝卷
        萧宝卷

        你回学校跪个键盘我看哈

      热点图片
      拼命载入中...