索引(Index)是帮助 MySQL 高效获取数据的数据结构。但是索引的规则有哪些呢?...索引一定要命名规范,哪个库哪个表哪几个字段哪种类型索引 选择唯一性索引——唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录 为经常需要排序、分组和联合操作的字段建立索引 为常作为查询条件的字段建立索引...尽量使用数据量少的索引,大字段尽量不要使用索引,如果使用用MD5值 如果索引的值很长,那么查询的速度会受到影响 尽量使用前缀来索引-如果索引字段的值很长,最好使用值的前缀来索引 删除不再使用或者很少使用的索引...最左前缀匹配原则 尽量选择区分度高的列作为索引区分度的公式是表示字段不重复的比例 索引列不能参与计算,保持列“干净”:带函数的查询不参与索引 尽量的扩展索引,不要新建索引 尽量索引覆盖,不要回表操作...如果是多个索引,指定索引提高查询效率 索引固然可以提高查询效率的,但是也有自己的局限性,数据搜索还是适合用ElasticSearch,但是mysql要做持久化,同步ES两种方法:一种是ES的java
如何加快查询,最直接有效的办法就是增加索引,在不使用索引的情况下试图采用其他方式加快查询就是在浪费时间。本文先介绍下MySQL索引的基本数据结构,再对索引的基本规则做下总结。...MySQL索引实现 MyISAM索引实现 数据与索引是分开存放(图一); 新增数据直接追加写数据文件,同时更新索引; B+树的叶子节点上存储的是数据的实际地址偏移; 主索引与辅助索引(图二)在数据结构上没有区别...例如:对班级表格的性别字段的索引只有两个值’F’,’M’,采用性别别的索引无论怎么查询,得到的是数据表的一半左右的记录。MySQL的查询优化逻辑甚至不会选择对于这样的索引,而改成遍历搜索。...创建了N个列的符合索引,实际上创建了MySQL能够使用的n个索引。例如某表的复合索引 index(国家,省份,城市)。...参考: 1、MySQL技术内幕:InnoDB存储引擎 2、MySQL技术内幕:第4版 3、MySQL高效编程 4、MySQL的官方手册 5、http://km.oa.com/articles/show/
命名规则支持遵从 .NET 设计准则的命名约定。...在本节中 规则 描述 CA1700:不要命名“Reserved”枚举值 此规则假定当前不使用名称中包含“reserved”的枚举成员,而是将其作为一个占位符,以在将来的版本中重命名或移除它。...重命名或移除成员是一项重大更改。 CA1707:标识符不应包含下划线 按照约定,标识符名称不包含下划线 (_) 字符。 该规则将检查命名空间、类型、成员和参数。...CA1724:类型名不应与命名空间冲突 类型名不应与 .NET 命名空间的名称匹配。 与该规则冲突将使库的可用性下降。...CA1727:对命名占位符使用 PascalCase 对于日志记录消息模板中的命名占位符,请使用 PascalCase。
包也是一样2、类名类名使用驼峰(camelcase)命名风格,首字母… 很多编程语言的变量名都遵循这一命名规则,例如r语言。...这个倒是跟我们平时创建密码的规则刚好相反,很多时候强的密码都是要求包含大小写字母… 和cc++、java等语言一样,python在命名上也有一套约定俗成的规则,符合规范的命名可以让程序的可读性大大增加,...,函数,变量取名,只要不违反命名规则,取任何名字都是可以的,一般取名都是… 废话不多说,开始今天的题目: 问:python变量、函数、类的命名规则?...命名规则首先说明一点,命名规则并不是强制的,这只是约定,你可以不遵守,也可以指定团队自己使用的命名规则,但最好团队所有的成员使用… 1.python命名规则—–>下划线连接 girl_of_wfb=lgl2...命名规则,总的原则就是见名知… 命名不能与关键字同名,不能与python内部的方法、模块、函数等重名!
1.java类的命名规则 包名:包名是全小写的名词,中间可以由点分隔开,例如:java.awt.event; 类名:首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写,例如class...HelloWorldApp; 接口名:命名规则与类名相同,例如interface Collection; 方法名:往往由多个单词合成,第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写,例如...2.java包的命名规则 包的命名是小写字母,报的路径符合开发时候对系统模块的定义,比如实体类对实体类,服务层对应服务层,数据库访问层对应数据库访问,以便我们看了包名就明白是哪个模块,从而直接到对应的包找相应的实现...“com.公司名.项目名.模块名”,我们现在开发的项目为:com.tju.conference.XXX所以命名比较正规。...那么我们个人开发的时候命名规则是什么呢?
1’),(‘2′,’2′,’2′,’2′,’2’) 使用MySql Explain开始分析题目结果: A选项: 结果可以看出,c1,c2,c3,c4均使用到了该索引,而我们对A结果稍作更改: 将c2...条件去掉后: 根据索引最左原则,c2字段没有使用索引,c2之后的字段都不能使用索引。...下面2图我们对比下索引最左原则: 上图结果显示直接使用c3是全表查询,无法使用该索引的,所以c3字段使用索引的前提是c1,c2两字段均使用了索引。 即是索引的最左原则(左前缀原则)。...由key_len长度确定,只有c1一个字段使用了索引。 D选项: order by 和group by 类似,字段顺序与索引一致时,会使用索引排序;字段顺序与索引不一致时,不使用索引。...综上所述问题答案: A:四个字段均使用了该索引 B:c1,c2字段使用了该索引 C:c1字段使用该索引 D:c1字段使用该索引 E:c1,c2字段使用了该索引 总结: 索引的最左原则(左前缀原则),如(
建立索引的规则 建立索引常用的规则如下: 表的主键、外键必须有索引; 数据量超过300的表应该有索引; 经常与其他表进行连接的表,在连接字段上应该建立索引; 经常出现在Where子句中的字段,非凡是大表的字段...,应该建立索引; 索引应该建在选择性高的字段上(枚举型字段不建索引); 索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引; 复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替: 正确选择复合索引中的主列字段...假如是,则可以建立复合索引;否则考虑单字段索引; 假如复合索引中包含的字段经常单独出现在Where子句中,则分解为多个单字段索引; 假如复合索引所包含的字段超过3个,那么仔细考虑其必要性,考虑减少复合的字段...; 假如既有单字段索引,又有这几个字段上的复合索引,一般可以删除复合索引; 频繁进行数据操作的表,不要建立太多的索引; 删除无用的索引,避免对执行计划造成负面影响; 以上是一些普遍的建立索引时的判定依据...因为太多的索引与不充分、不正确的索引对性能都毫无益处:在表上建立的每个索引都会增加存储开销,索引对于插入、删除、更新操作也会增加处理上的开销。
1、模块 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况) # 正确的模块名 import decoder import html_parser # 不推荐的模块名...包也是一样 2、类名 类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头 class Farm(): pass class AnimalFarm(Farm):...5、常量 常量使用以下划线分隔的大写命名 MAX_OVERFLOW = 100 Class FooBar: def foo_bar(self, print_): print(...print_) 6、一些命名习惯 用'has'或'is'前缀命名布尔元素 is_life=True#是否活着 is_connected=True#是否连接 has_cache=True#是否有内存...复数命名集合 users=['zhangsan','lisi'] 显示命名字典 # 个人地址用全称 persons_addresses={'zhangsan':'beijing','lisi':'shanghai
Python 变量命名规则 python 是动态编译语言,不用事先声明类型,赋值即声明。 1. 要具有描述性 2.变量名只能是:数字,字母组成,不可以是空格或特殊字符,如:(#?。,¥$*~!...lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’] 6.变量区分大小写 常用的命名方法
样式命名规则 由 Ghostzhang 发表于 2008-03-20 23:12 命名一直是个让我头痛的问题,特别是那些看上去差不多的模块,所以就得想办法啦,我总结了下面的方法,虽然还在试验中。...具体如下: 要注意的内容: 一,命名所选用的单词应选择不过于具体表示某一状态(如颜色、字号大小等)的单词,以避免当状态改变时名称失去意义。...可使用类似下面的规则: [模块前缀|类型|作用][名称][状态|位置] 约定模块、类型、状态、位置等的所使用的单词或其缩写,保持上面的顺序,尽量保持在两到三个单词说清用途。
本文记录编程常用的几种命名规范及其应用场景。...大驼峰命名法(CamelCase) 又称 **帕斯卡 (Pascal Case)**命名法 所有单词首字母大写,直接连接排列 类名通常使用 大驼峰命名法 示例: ServiceDiscovery...、ServiceInstance、LruCacheFactory 小驼峰命名法(lowerCamelCase) 首单词首字母小写,之后的单词首字母大写,单词直接连接 通常函数方法名、参数名、成员变量、局部变量需要使用小驼峰命名法...status_code_when_request_is_valid、CLIENT_CONNECT_SERVER_FAILURE 单词数量多时更具可读性 有时会结合驼峰命名法,变为 驼峰蛇形命名法~...匈牙利命名法(HN case) 遵循:属性 + 类型 + 描述 的方式为变量命名,使得程序员对变量类型和属性有直观了解 示例: pfnEatApple //pfn 是类型描述, EatApple
xilinx公司的FPGA种类繁多,知道了命名规则,看起来应该会舒服很多。 1.xilinx的FPGA命名规则 Xilinx的ug112第一章中介绍了Xilinx公司的FPGA命名规则。...Aerospace parts have an “R” after “XQ” instead of “XC”. 2.xilinx文档分类及其命名 xilinx的文档都可以在其网站找到,xilinx...Technorati 标记: FPGA,Xilinx,命名规则
原博文 2020-05-14 10:53 − python标识符命名规则: 1,标识符只能包含大、小写字母、数字、下划线“_”,并且不能以数字开头 2,标识符不能与python关键字相同,但可以包含 3
索引的结构 索引结构: MySQL的索引是在存储引擎层实现的,不同的存储引擎有不同的结构。 ①B+Tree索引:最常见的索引类型,大部分引擎都支持B+树索引。...B+Tree索引 MySQL数据库中,支持hash索引的是Memory引擎,而InnoDB中具有自适应hash功能,hash索引是存储引擎根据B+Tree索引在指定条件下自动构建的。...MySQL的慢查询日志默认没有开启,需要在MySQL的配置文件/etc/my.cnf中配置相应信息: # /etc/my.cnf文件内: #开启MySQL慢查询开关 slow_query_log=1...索引的使用规则 最左前缀法则: 如果索引了多列(联合索引),要遵守最左前缀法则。最左前缀法则指的是查询从索引的最左列开始,并且不跳过索引中的列。如果跳跃某一列,索引将部分失效(后面的字段索引失效)。...即or连接的条件都需建立索引才能使得索引生效。 数据分布影响: 如果MySQL评估使用索引比全表更慢,则不使用索引。
---- 常见命名规则 匈牙利命名法:广泛应用于Microsoft Windows这类环境中; 驼峰命名法:近年来越来越流行。...帕斯卡(Pascal)命名法:与驼峰命名法类似。 只不过驼峰命名法是第一个单词首字母小写,而帕斯卡命名法则是第一个单词首字母大写。因此这种命名法也有人称之为“大驼峰命名法”。...例如: DisplayInfo(); UserName 都是采用了帕斯卡命名法。在C#中,以帕斯卡命名法和骆驼命名法居多。...事实上,很多程序设计者在实际命名时会将驼峰命名法和帕斯卡结合使用,例如变量名采用驼峰命名法,而函数采用帕斯卡命名法。...下划线命名法: 下划线法是随着C语言的出现流行起来的,在UNIX/LIUNX这样的环境,以及GNU代码中使用非常普遍。 ---- RTOS命名规则 变量名 u :代表unsigned。
命名规则有三个组件: 规则适用的符号组,例如,公共成员或私有字段。 要与规则关联的命名样式,例如,名称必须采用大写形式或以下划线开头。 用于强制执行约定的严重性。...要使规则生效,必须具有所有命名规则属性。...属性 说明 symbols 符号组的标题;命名规则将应用于此组中的符号 style 应与此规则关联的命名样式的标题 severity 设置用于强制执行命名规则的严重性。...规则顺序 EditorConfig 文件中定义命名规则的顺序并不重要。 命名规则根据规则本身的定义自动排序。...格式设置规则 Roslyn 命名规则 .NET 代码样式规则参考
C++命名规范 常见命名法: 匈牙利命名法:基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。命名要基于容易记忆容易理解的原则。...Camel命名法:即骆驼式命名法,原因是采用该命名法的名称看起来就像骆驼的驼峰一样高低起伏。...Camel命名法有两种形式:混合使用大小写字母和单词之间加下划线,例如runFast和run_fast都属于Camel命名法。...Pascal命名法:与Camel命名法类似,不过Pascal命名法的首字母为大写字母。 命名通则: 1、在所有命名中,都应使用标准的英文单词或缩写。...2、所有命名都应遵循望文知义原则,即名称应含义清晰、明确。 3、所有命名都不易过长,应控制在规定的最大长度以内。 4、所有命名都应尽量使用全称。
版本号的格式为 X.Y.Z(又称 Major.Minor.Patch),递增的规则为: X 表示主版本号,当 API 的兼容性变化时,X 需递增。...详细的规则如下: X, Y, Z 必须为非负整数,且不得包含前导零,必须按数值递增,如 1.9.0 -> 1.10.0 -> 1.11.0 0.Y.Z 的版本号表明软件处于初始开发阶段,意味着 API...版本号的排序规则为依次比较主版本号、次版本号和修订号的数值,如 1.0.0 < 1.0.1 < 1.1.1 < 2.0.0;对于先行版本号和开发版本号,有:1.0.0.a100 < 1.0.0,2.1.0
Terra卫星原始数据命名规则 >>>15位 A20040707140331.down A定义为Terra卫星; YYYY-MM-DD-HH-MM-SS...L1A 数据命名规则 >>> 20位 AMOD0120040707140331.hdf A表示上午星TERRA;B表示下午星AQUA;...L1B 数据命名规则 >>> 23位 AMOD021KM20040707140331.hdf A表示上午星TERRA;B表示下午星AQUA; MOD...快视图像数据命名规则 >>> 15位 A20040707140331.jpg A表示上午星TERRA;B表示下午星AQUA; 2004-07-...合成产品命名规则 MOD09A1.A2017025.h26v05.006.2017034123845.hdf 产品缩写 . 数据获取时间(YYY-DDD).
非换肤型网站不可滥用此类状态 .z-:为状态类样式加入前缀,统一标识,方便识别,她只能组合使用或作为后代出现(.u-ipt.z-dis{},.m-list li.z-sel{}) 布局 grid (.g-)语义命名简写文档...bodybd尾部footft主栏mainmn主栏子容器maincmnc侧栏sidesd侧栏子容器sidecsdc盒容器wrap/boxwrap/box模块 module (.m-), unit (.u-)语义命名简写导航...downloaddld注册registreg投票votevote版权copyrightcprt结果resultrst标题titlett按钮buttonbtn输入inputipt功能 function (.f-)语义命名简写浮动清除...verticalalignmiddlevam溢出隐藏overflowhiddenoh完全消失displaynonedn字体大小fontsizefs字体粗细fontweightfw皮肤 skin (.s-)语义命名简写字体颜色...backgroundbg背景颜色backgroundcolorbgc背景图片backgroundimagebgi背景定位backgroundpositionbgp边框颜色bordercolorbdc状态 .z-语义命名简写选中
领取专属 10元无门槛券
手把手带您无忧上云