
sql
文章平均质量分 85
ywl470812087
个人简介:深耕物联网行业,ERP,优快云博客专家。 任职华为网联网智慧照明、空调资深工程师,并且上线投产使用,研发企业亿量级吞吐中间件。 擅长 Java语言、C语言等。
展开
-
悲观锁和乐观锁的区别和应用场景
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,...原创 2018-08-14 21:46:31 · 109705 阅读 · 0 评论 -
乐观锁和悲观锁的区别
如果你觉得文字太长,可以直接先看文末思维导图总结,小编已为你整理了作者的主要观点,供你回顾与快速阅读~悲观锁(Pessimistic Lock)顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。它指的是...原创 2019-09-21 16:16:25 · 103368 阅读 · 0 评论 -
SQL:如何用一个sql统计出全校男生个数、女生个数以及总人数
SQL:如何用一个sql统计出全校男生个数、女生个数以及总人数本文为转载:https://blog.youkuaiyun.com/wangjinsu7/article/details/52257150情景:统计全校的男生、女生、以及总人数表结构如下:table : students coulmns :studentID char(40) NOT NULL...转载 2019-04-15 22:30:24 · 139633 阅读 · 0 评论 -
sql查询中使用in和exits比较和区别
首先,查询中涉及到的两个表,一个user和一个order表,具体表的内容如下: user表: order表: in 确定给定的值是否与子查询或列表中的值相匹配。in在查询的时候,首先查询子查询的表,然后将内表和外表做一个笛卡尔积,然后按照条件进行筛选。所以相对内表比较小的时候,in的速度较快。 具体sql语句如下: ...原创 2019-04-03 09:03:08 · 119224 阅读 · 1 评论 -
group by(mysql oracle的区别) 的基本用法
group by做为分组来使用,后面为条件,可以有多个条件,条件相同的为一组,配合聚合函数进行相关统计。在不同数据库中用法稍有不同,这里只测试mysql和oracle。1.准备好一张数据表: mysql oracle...转载 2019-04-04 19:58:48 · 122814 阅读 · 0 评论 -
mysql和oracle区别总结(二)
分页操作的处理方式不同oracle使用的是rownum而mysql使用的是limit数据类型oracle有varchar2类型mysql没有原创 2019-03-22 08:31:27 · 127219 阅读 · 0 评论 -
oracle与mysql的区别总结(一)
一条sql语句同时插入多条值1oracle中使用如下语句1.1方式一该方式特点是能插如值是固定的多条数据insert allinto test01 values(1,'a')into test01 values(2,'b')select 1 from dual; --这一行不能去掉,但是不知道有什么用1.2方式二该方式特点是:能插入一些值不是固定的多条数据....原创 2019-03-22 08:22:30 · 118343 阅读 · 0 评论 -
SQL中使用视图的优点和缺点是什么
SQL中使用视图的优点和缺点是什么视图的优点与缺点在程序设计的时候必须先了解视图的优缺点,这样可以扬长避短,视图具有如下的一些优点:● 简单性。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件。● 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。数据库授...原创 2019-03-21 08:30:14 · 112101 阅读 · 0 评论 -
[小结]InnoDB体系结构及工作原理
一、概述: innodb的整个体系架构就是由多个内存块组成的缓冲池及多个后台线程构成。缓冲池缓存磁盘数据(解决cpu速度和磁盘速度的严重不匹配问题),后台进程保证缓存池和磁盘数据的一致性(读取、刷新),并保证数据异常宕机时能恢复到正常状态。 缓冲池主要分为三个部分:redolog buffer、innodb_buffer_pool、innodb_additional_mem_pool...转载 2019-03-03 12:49:44 · 110570 阅读 · 0 评论 -
sql语句优化之一:尽量使用索引避免全表扫描
url:http://lzz7658823.iteye.com/?page=31.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置...原创 2019-02-21 23:17:20 · 127376 阅读 · 1 评论 -
Sql语句中IN和exists的区别及应用
表展示 首先,查询中涉及到的两个表,一个user和一个order表,具体表的内容如下: user表: order表: in 确定给定的值是否与子查询或列表中的值相匹配。in在查询的时候,首先查询子查询的表,然后将内表和外表做一个笛卡尔积,然后按照条件进行筛选。所以相对内表比较小的时候,in的速度较快。 具体sql语句如下: 1 SELECT ...原创 2018-05-22 16:59:13 · 116031 阅读 · 0 评论 -
数据库中的索引原理阅读
数据库中的索引原理阅读:实际上,您可以把索引理解为一种特殊的目录。微软的SQLSERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别:其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的...转载 2018-05-21 15:01:42 · 116061 阅读 · 0 评论 -
SQL 创建数据库、表以及索引
创建数据库这样做就可以创建一个数据库:CREATE DATABASE 数据库名称创建一个表这样做就可以创建一个数据库中的表:CREATE TABLE 表名称(列名称1 数据类型,列名称2 数据类型,.......)实例本例演示如何创建名为 "Person" 的表,有四个列。列名是:"LastName"、"FirstName"、"Address" 以及 "Age":CREATE TABL...原创 2018-05-18 15:48:30 · 109066 阅读 · 0 评论 -
提高数据库处理查询速度
1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: s原创 2017-12-15 14:08:59 · 95392 阅读 · 0 评论 -
sql中exits和in的区别
sql中exits和in的区别转:http://hi.baidu.com/delphi_relive/blog/item/d7c0034a49c4932208f7ef21.htmlin 和 exists也是很好区别的.in 是一个集合运算符.a in {a,c,d,s,d....}这个运算中,前面是一个元素,后面是一个集合,集合中的元素类型是和前面的元素转载 2017-12-22 16:28:50 · 124940 阅读 · 0 评论