sql
文章平均质量分 92
百里牛金
沟通简单反馈勇气谦逊
展开
-
跟着项目学sql——查询语句优化(二)
一条查询语句很慢到底会引发什么后果呢?比如一个报表导出的语句需要几十秒。。。我们通过笛卡尔积加排序创造这样一条反复全表扫描的语句:select top 100 * from WorkLink w1,WorkLink w2,WorkLink w3order by w1.Id asc,w2.Id asc现在查询语句进入漫长的执行中:这个时候,有用户执行更新操作:upd...原创 2019-12-03 16:59:35 · 1181 阅读 · 0 评论 -
跟着项目学sql——查询语句优化(一)
现阶段,笔者的环境中只有SqlServer和Oracle。所以后面的文章更多的会以SqlServer的背景来做了。来看这样一张表WorkLink:WorkLink表结构WorkLink表数据,现在表中有超过150W条数据,并持续增长中。一)现在需要实现分页查询功能,并且必须显示总记录数,如下:在获取分页数据之前,需要我们先去获取总数,select...原创 2019-12-01 17:13:21 · 1360 阅读 · 0 评论 -
跟着项目学sql——数据库事物(1)
数据库事务是构成单一逻辑工作单元的操作集合,构成逻辑整体的这些数据库操作,要么全部执行成功,要么全部不执行,是一个不可分割的工作单位。好吧,上面还是百度百科里的一段定义,扒过来撑场面的。sql从数据库事物开始就已经进入到非常难以讲解的地步了。并不是说数据库事物本身的定义有多难理解,而是数据库事物的应用场景实在是不好找!来看一下有关数据库事物的许多文章中几乎已经被用烂的例子:转账是...原创 2019-07-15 00:11:07 · 824 阅读 · 0 评论 -
19年加油,以及再谈三范式
年初做了一段时间运维工作,BS海外系统,小集群,香港和北京各十几台服务器。起初是各种头疼,用了挺长时间,总算是入门了。这才有能力在上班之余,每天抽出几十分钟跑一个奥森南园。之后被叫过来参与了朝阳门的一个小项目,交通、行业、技术等各种因素吧,很煎熬。。。 笔者也从中失去了兴致,正赶上雄安新区招收事业编制,报名,准备,参考,昨天出的成绩,差了3分,没能进入面试。不可惜...原创 2019-04-08 23:30:08 · 782 阅读 · 0 评论 -
跟着项目学sql(六) 索引(中)
接上文,我们在不经意间就通过主键解决了项目中的主要功能:select 字段 from news where id=***一个主键索引帮我们解决了系统70%的性能问题,剩下的30%中有20%是关于模糊检索的。用户可以在搜索框输入关键字搜索新闻内容。比如查找包含关键字【索引】的文章:select *from news where content like '%索引%';结果如下,耗...原创 2018-09-25 10:28:40 · 1818 阅读 · 0 评论 -
跟着项目学sql(六) 索引(下)
一、索引的优缺点?优点:建立索引可以有效缩短数据的检索时间,包括条件查询、连接查询、排序和分组。缺点:索引占据数据库的物理存储空间,创建索引和维护索引需要时间成本,降低表的增删改的效率。二、聚集索引和非聚集索引的区别1)聚集索引数据行的物理顺序与列值(这里是主键)的逻辑顺序相同,一个表中只能拥有一个聚集索引。非聚集索引的逻辑顺序与磁盘上行的物理存储顺序不同,一个表中可以拥有多个非聚...原创 2018-09-28 15:36:16 · 1880 阅读 · 0 评论 -
跟着项目学sql(五) 索引(上)
开头还是百度百科中的【索引】相关术语在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引以找到特定...原创 2018-09-20 15:30:13 · 2444 阅读 · 0 评论 -
跟着项目学sql(四) DML
数据操纵语言(Data Manipulation Language, DML)是SQL语言中,负责对数据库对象运行数据访问工作的指令集,以INSERT、UPDATE、DELETE三种指令为核心,分别代表插入、更新与删除,是开发以数据为中心的应用程序必定会使用到的指令,因此有很多开发人员都把加上SQL的SELECT语句的四大指令以“CRUD”来称呼。接上文,在测试服务器完成对数据库NewsD...原创 2018-09-10 17:38:37 · 1849 阅读 · 0 评论 -
跟着项目学sql(三) DDL
在根据设计文档创建NewsDB数据库的过程中,我们用到了DDL。SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的连接,以及施加表间的约束。语法格式:CREATE DATABASE - 创建新数据库主要的DDL动词: CREATE(创建)、DROP(删除)、ALTER(修改)、TRUNCATE(截断)、RENAME(重命...原创 2018-09-10 10:57:24 · 2172 阅读 · 0 评论 -
跟着项目学sql(二) 三大范式
序号 表名 说明 1 permission 权限表 2 user 用户表 3 menu 栏目表 4 news 新闻表 5 clicks 浏览信息表 ER图如下,并没有创建外键约束,因此本文中所有的外键都是指【逻辑外键】:我们在数据库表设计时,经常说好的设计最起码要遵循第三范式,那现在用三大范式来...原创 2018-09-05 16:14:10 · 2898 阅读 · 0 评论 -
跟着项目学sql(一) 项目介绍
新闻发布系统 Mysql数据库+dapper1)权限:网站设置【网站名称、SEO、静态化等等网站配置文件的设置】、用户管理、用户权限设置、栏目管理、新闻管理。2)后台用户登陆后,可以发布新闻,并指向对应的栏目,每篇新闻可以对应多个栏目,有新闻管理权限的用户,可以管理所有新闻,而没有该权限的用户,只能管理本人创建的新闻。3)网站需要加入健康检查插件,对接运维系统,记录运维信息。参考移...原创 2018-09-04 14:34:38 · 5091 阅读 · 0 评论