二手车网站制作软件工程师面试常见问题

news/2025/10/3 10:13:19/文章来源:
二手车网站制作,软件工程师面试常见问题,重庆大坪网站建设,怎么投放广告是最有效的一、 MySQL建表#xff0c;字段需设置为非空#xff0c;需设置字段默认值。二、 MySQL建表#xff0c;字段需NULL时#xff0c;需设置字段默认值#xff0c;默认值不为NULL。三、 MySQL建表#xff0c;如果字段等价于外键#xff0c;应在该字段加索引。四、 MySQL建表字段需设置为非空需设置字段默认值。二、 MySQL建表字段需NULL时需设置字段默认值默认值不为NULL。三、 MySQL建表如果字段等价于外键应在该字段加索引。四、 MySQL建表不同表之间的相同属性值的字段列类型类型长度是否非空是否默认值需保持一致否则无法正确使用索引进行关联对比。五、 MySQL使用时一条SQL语句只能使用一个表的一个索引。所有的字段类型都可以索引多列索引的属性最多15个。六、 如果可以在多个索引中进行选择MySQL通常使用找到最少行的索引索引唯一值最高的索引。七、 建立索引index(part1,part2,part3),相当于建立了 index(part1),index(part1,part2)和index(part1,part2,part3)三个索引。八、 MySQL针对like语法必须如下格式才使用索引SELECT * FROM t1 WHERE key_col LIKE ab% 九、 SELECT COUNT(*) 语法在没有where条件的语句中执行效率没有SELECT COUNT(col_name)快但是在有where条件的语句中执行效率要快。十、 在where条件中多个and的条件中必须都是一个多列索引的key_part属性而且必须包含key_part1。各自单一索引的话只使用遍历最少行的那个索引。十一、 在where条件中多个or的条件中每一个条件都必须是一个有效索引。十二、 ORDER BY 后面的条件必须是同一索引的属性排序顺序必须一致(比如都是升序或都是降序)。十三、 所有GROUP BY列引用同一索引的属性并且索引必须是按顺序保存其关键字的。十四、 JOIN 索引所有匹配ON和where的字段应建立合适的索引。十五、 对智能的扫描全表使用FORCE INDEX告知MySQL使用索引效率更高。十六、 定期ANALYZE TABLE tbl_name为扫描的表更新关键字分布 。十七、 定期使用慢日志检查语句执行explain分析可能改进的索引。十八、 条件允许的话设置较大的key_buffer_size和query_cache_size的值(全局参数)和sort_buffer_size的值(session变量建议不要超过4M)。备注主键的命名采用如下规则主键名用pk_开头后面跟该主键所在的表名。主键名长度不能超过30个字符。如果过长可对表名进行缩写。缩写规则同表名的缩写规则。主键名用小写的英文单词来表示。外键的命名采用如下规则外键名用fk_开头后面跟该外键所在的表名和对应的主表名(不含t_)。子表名和父表名自己用下划线(_)分隔。外键名长度不能超过30个字符。如果过长可对表名进行缩写。缩写规则同表名的缩写规则。外键名用小写的英文单词来表示。索引的命名采用如下规则1)索引名用小写的英文字母和数字表示。索引名的长度不能超过30个字符。2)主键对应的索引和主键同名。3)唯一性索引用uni_开头后面跟表名。一般性索引用ind_开头后面跟表名。4)如果索引长度过长可对表名进行缩写。缩写规则同表名的缩写规则index 相关语法CREATE INDEX log_url ON logaudit_log(url);show index from logaudit_logdrop index log_request_time on logaudit_logsql执行效率检测 mysql explainexplain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。使用方法在select语句前加上explain就可以了如explain select surname,first_name form a,b where a.idb.id分析结果形式如下table |  type | possible_keys | key | key_len  | ref | rows | ExtraEXPLAIN列的解释table显示这一行的数据是关于哪张表的type这是重要的列显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg、ref、range、indexhe和ALLpossible_keys显示可能应用在这张表中的索引。如果为空没有可能的索引。可以为相关的域从WHERE语句中选择一个合适的语句key实际使用的索引。如果为NULL则没有使用索引。很少的情况下MYSQL会选择优化不足的索引。这种情况下可以在SELECT语句中使用USEINDEX(indexname)来强制使用一个索引或者用IGNORE INDEX(indexname)来强制MYSQL忽略索引key_len使用的索引的长度。在不损失精确性的情况下长度越短越好ref显示索引的哪一列被使用了如果可能的话是一个常数rowsMYSQL认为必须检查的用来返回请求数据的行数Extra关于MYSQL如何解析查询的额外信息。将在表4.3中讨论但这里可以看到的坏的例子是Using temporary和Using filesort意思MYSQL根本不能使用索引结果是检索会很慢extra列返回的描述的意义Distinct一旦MYSQL找到了与行相联合匹配的行就不再搜索了Not existsMYSQL优化了LEFT JOIN一旦它找到了匹配LEFT JOIN标准的行就不再搜索了Range checked for eachRecord(index map:#)没有找到理想的索引因此对于从前面表中来的每一个行组合MYSQL检查使用哪个索引并用它来从表中返回行。这是使用索引的最慢的连接之一Using filesort看到这个的时候查询就需要优化了。MYSQL需要进行额外的步骤来发现如何对返回的行排序。它根据连接类型以及存储排序键值和匹配条件的全部行的行指针来排序全部行Using index列数据是从仅仅使用了索引中的信息而没有读取实际的行动的表返回的这发生在对表的全部的请求列都是同一个索引的部分的时候Using temporary看到这个的时候查询需要优化了。这里MYSQL需要创建一个临时表来存储结果这通常发生在对不同的列集进行ORDER BY上而不是GROUP BY上Where used使用了WHERE从句来限制哪些行将与下一张表匹配或者是返回给用户。如果不想返回表中的全部行并且连接类型ALL或index这就会发生或者是查询有问题不同连接类型的解释(按照效率高低的顺序排序)system表只有一行system表。这是const连接类型的特殊情况const表中的一个记录的最大值能够匹配这个查询(索引可以是主键或惟一索引)。因为只有一行这个值实际就是常数因为MYSQL先读这个值然后把它当做常数来对待eq_ref在连接中MYSQL在查询时从前面的表中对每一个记录的联合都从表中读取一个记录它在查询使用了索引为主键或惟一键的全部时使用ref这个连接类型只有在查询使用了不是惟一或主键的键或者是这些类型的部分(比如利用最左边前缀)时发生。对于之前的表的每一个行联合全部记录都将从表中读出。这个类型严重依赖于根据索引匹配的记录多少—越少越好range这个连接类型使用索引返回一个范围中的行比如使用或FAQ1表中包含 10 万条记录有一个 datetime 类型的字段。取数据的语句SELECT * FROM my_table WHERE created_at 2010-01-20;用 EXPLAIN 检查发现 type 是 ALL key 是 NULL根本没用上索引。可以确定的是created_at 字段设定索引了。什么原因呢用 SELECT COUNT(*) 看了一下符合 WHERE 条件的记录总数居然是 6W 多条难怪不用索引这时用索引毫无意义就好像 10 万条记录的用户表有个性别字段不是男就是女在这种字段设置索引是错误的决定。稍微改造一下上述语句SELECT * FROM my_table WHERE created_at BETWEEN 2009-12-06 AND 2010-01-20;这回问题解决符合条件的记录只有几百条EXPLAIN 的 type 是 rangekey 是 created_atExtra 是 Using where 。自己总结个准则索引的目的就是尽量缩小结果集这样才能做到快速查询。6万条记录符合条件已经超出总记录数的一半这时索引已经没有意义了因此 MySQL 放弃使用索引。这与设置 gender 字段并加上索引的情况相似当你要把所有男性记录都选取出来符合条件的记录数约占总数的一半MySQL 同样不会使用这个索引。唯一值越多的字段使用索引的效果越好。设置联合索引时唯一值越多的越应该放在“左侧”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/925763.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

银河麒麟V10服务器桌面SP1、SP2、SP3国防版集采版国防集采版教育版

银河麒麟V10服务器桌面SP1、SP2、SP3国防版集采版国防集采版教育版 下载地址: kylin_gfb.zip 👍

戴尔网站建设规划旅游门户网站有哪些

2023年7月25日至26日,由中国信息通信研究院(简称“中国信通院”)、中国通信标准化协会主办的以“云领创新,算启新篇”为主题的“2023可信云大会”在北京成功举办。会上公布了多项前瞻领域的评估结果和2023年度最佳实践案例&#x…

上海备案证查询网站查询网站查询系统网站建设公司专业网站费用报价

1、 文档目标 解决分布式部署下其他机器如何连接RLMLicense管理器。 2、 问题场景 分布式部署下QAC要在其他机器上单独运行扫描,必须先连接RLMLicense管理器,如何连接? 3、软硬件环境 1、软件版本:HelixQAC23.04 2、机器环境…

凭祥网站建设php怎么做搭建网站

主题是拥抱开源 拥抱开源:开放是互联终端不断增长的主旨和核心——使技术世界变得越来越复杂,联系越来越紧密。在微软,我们专注于向客户提供任何信息支持,即使在任何设备或者在多个平台上。 未来是开放的,未来的云是开…

display ip routing-table故障判断及题目 - 详解

display ip routing-table故障判断及题目 - 详解2025-10-03 10:02 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display…

完整教程:华为eNSP环境安装和命令使用教程

完整教程:华为eNSP环境安装和命令使用教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "…

分布式架构初识:为什么需要分布式 - 教程

分布式架构初识:为什么需要分布式 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "…

[IOI 1998 / USACO2.2] 派对灯 Party Lamps 题解 + bitset浅谈

现在有这些按钮:按钮 \(1\):当按下此按钮,将改变所有的灯:本来亮着的灯就熄灭,本来是关着的灯被点亮; 按钮 \(2\):当按下此按钮,将改变所有奇数号的灯; 按钮 \(3\):当按下此按钮,将改变所有偶数号的灯; 按…

解题报告-小 A 的树

小 A 的树 题目描述 小 A 有一棵 \(N\) 个点的树,每个点都有一个小于 \(2^{20}\) 的非负整数权值。现在小 A 从树中随机选择一个点 \(x\),再随机选择一个点 \(y\)(\(x\)、\(y\)可以是同一个点),并对从 \(x\) 到 \…

【React 状态管理深度解析:Object.is()、Hook 机制与 Vue 对比实践指南】 - 教程

【React 状态管理深度解析:Object.is()、Hook 机制与 Vue 对比实践指南】 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font…

2025 --【J+S 二十连测】-- 第一套 总结

总结 T1 考场上很快写出了正解,没有问题 T2 考场上很快写出了正解,但提交时交了两边,故0分 T3 考场上很快写出了正解,没有问题 T4 考场上很快写出了部分分,拿满了,没有问题 题解 T1 照题意模拟即可 代码 #includ…

详细介绍:分布式缓存的正确姿势:Cache-Aside、更新策略与分布式锁在 Java 微服务中的实战

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

企业网站建设的文章太原市做网站

AI的归纳和演绎法分别是什么? AI的归纳和演绎法是两种常见的推理方法。 归纳法(inductive reasoning)是一种从特殊到一般的过程,在有限的实例观察中得出一般规律或原则。用简单的说法,就是从一些具体的事物或情况中总…

做网站大彩票网站开发搭建

《绝地求生》PCL秋季赛的战斗已经全部落下帷幕了,Team Razer 雷蛇战队成员,国内最具人气的4AM战队凭借着在季后赛的出色发挥,以316分的高分碾压全场,成功斩获本次PCL秋季赛的冠军,成为PCL联赛首个双冠队伍。随着金色的…

个人网站建设服务器aaa云主机怎么做网站

1、基本操作 1.1、进入HBase客户端命令行 前提是先启动hadoop集群和zookeeper集群。 bin/hbase shell 1.2、查看帮助命令 helphelp 查看指定命令的语法规则 查看 list_namespace 的用法(‘记得加单引号’) help list_namespace 2、namespace 我们…

信阳市网站建设自己做服装搭配的网站

Docker Compose是一种流行的技术,可以用来定义和管理你的应用程序所需的多个服务容器。通常在你的应用程序旁边创建一个 compose.yml 文件,它定义和配置服务容器。 使用 Docker Compose 的典型工作流程是运行 docker compose up,用它连接启动…

网站建设优化服务方案模板西安商城网站建设

前言 spring作为主流的 Java Web 开发的开源框架,是Java 世界最为成功的框架,持续不断深入认识spring框架是Java程序员不变的追求。 本篇博客介绍SpringBootApplicant注解的自动加载相关内容 其他相关的Spring博客文章列表如下: Spring基…

【实验报告】华东理工大学随机信号处理实验报告 - 详解

【实验报告】华东理工大学随机信号处理实验报告 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&q…

网站建设都包含哪些内容wordpress 更新网站

print() 在控制台输出 input() 获取控制台输⼊的内容 type() 获取变量的数据类型 len() 获取容器的⻓度 (元素的个数) range() ⽣成⼀个序列[0, n) 以上都是我们学过的函数,函数可以实现⼀个特定的功能。我们将学习⾃⼰如何定义函数, 实现特定的功能。 1.函数是什么…

页面置换算法

最佳置换算法opt 类似于cache 每次选择淘汰的页面将是以后永不使用的,或者在最长时间不会被访问的页面,这样可以保证最低的缺页率 缺页时未必发生页面置换,若还有可用的空闲内存块,就不用进行页面置换 缺页率=缺页…