
SQL
迟到的二货
~~~~~~~~
展开
-
数据库使用规范
一. 数据库命名规范命名规则可以再详细一点数据库数据库的定义原则上对应在子系统一级,在不能满足实际需求的情况下也可以对应到具体的应用程序一级:命名:采用“系统名称_子系统名称_db ”或“系统名称_应用程序名称_db ”,去除子系统或应用程序名称中的 “.” 符号。命名长度不可超过20个字符,如果系统名称较长可采用缩写,如power_express可缩写为pe, 并且所有字母小写,每个...原创 2020-02-24 09:50:13 · 699 阅读 · 0 评论 -
sql优化总结(一)
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描。char(100) 型 null 值占空间;varchar类型 null不占空间。可以在num上设置默认值0,确保表中num列没有null值。 3.应尽量避免在 where原创 2018-01-13 12:49:28 · 271 阅读 · 0 评论 -
sql优化总结(二)
不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。一、不合理的索引设计例:表record有620000行,试看在不同的索引下,下面几个 SQL的运行情况:—- 1.在date上建有一非个群集索引select count(*) from record where date >’19991201’ and date 2000 (25秒)select原创 2018-01-13 14:47:11 · 316 阅读 · 0 评论 -
sql优化总结(三)
实践中如何优化mysql1) SQL语句及索引的优化2) 数据库表结构的优化3) 系统配置的优化4) 硬件优化索引的底层实现原理和优化MsSql、DB2使用的是B+Tree,Oracle及Sysbase使用的是B-Tree 原理:叶子节点是按关键字大小顺序排列,且增加了指向下一个叶子节点的指针。 优化:InnoDB建议大部分表使用默认的自增的主键作为索引SQ原创 2018-01-13 16:18:17 · 328 阅读 · 0 评论 -
sql能重复执行约定
为了保障生产发布,执行SQL脚本能够健康稳定执行,对需要发布生产的SQL脚本进行约定。如下:创建新表需要先书写“DROP TABLE IF EXISTS [table_name]”,然后再“CREATE TABLE [table_name]…”,(警告)需要注意,前提是生产库不存在这张表!DROP TABLE IF EXISTS [table_name];CREATE TABLE [ta...原创 2019-06-26 16:11:38 · 579 阅读 · 0 评论