![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL学习
DATASQL数据糖
一个30岁互联网人的下半场,
有技术,有思考……
展开
-
SQL30问
第一问:SQL是什么?SQL (Structured Query Language)是一门结构化查询语言,它遵循美国的ANSI的标准,多用于对数据库包括数据库中的数据进行操纵,如SELECT,UPDATE,DELETE,DROP等。第二问:数据库是什么?数据库是用来存储数据信息的地方,并提供数据排序、检索的能力。第三问:数据库和数据仓库的区别是什么?数据库(OLTP):主要是指传统的关系型数据库的应用,包括基本的、日常的事务的处理,更关注的是业务交易数据的处理。...原创 2020-08-07 15:31:35 · 220 阅读 · 0 评论 -
是NOSQL还是NEWSQL
近几年随着大数据生态圈的不断发展,NOSQL也随之声名鹊噪,甚至有超宇传统关系型数据库的风头。不光说的人多了,用到的地方也逐渐增多,尤其做作为大数据生态圈中的一员,被用到越来越多的地方。今天就跟大家捋一捋NOSQL产生的背景以及发展历程,顺便看看这个SQL到底是应该叫NOSQL还是NEWSQL?NOSQL产生的历史背景许多人可能认为NOSQL不过是传统关系型数据库的一个分类,其实不然。NOSQL起步并不晚于传统关系型数据库。几乎在E.F. Codd提出关系型理论的同时NOSQL也出现了,.原创 2020-08-05 11:25:10 · 494 阅读 · 1 评论 -
数据人必须知道的SQL概念(A-Z)
作为数据从业者,大家用的最多的应该就是SQL语言了,那么除了日常的select,你还了解哪些SQL相关的概念呢?今天就按照字母表的顺序(A-Z)来给大家简单介绍一下数据人必须知道的SQL概念大全。A:Alias别名,包含表的别名和列的别名。在哪些场景下我们需要用到别名呢?通常是多表join的时候表名过长,多次引用书写比较麻烦的时候我们会给表起一个别名;另外就是表join的时候,如果多个表中有重复的列名而且我们都需要提取出来的时候也需要别名;再则就是列级的别名,通常我们是给表中的列取一个“有意.原创 2020-08-04 10:48:34 · 1093 阅读 · 0 评论 -
运营必看SQL(中)—写好SQL的“六脉神剑
写在前面:如果你是一名程序员又恰好是一名SQLBOY的话,那么请移步,因为下面讲的实在太精彩但不专业;如果你是一名想学会写好SQL的运营,那么你一定要认真来读。本文用形象的的语言介绍写好SQL六大必须掌握的招式,每一式都是你写好SQL的关键。可能你之前只是会用之前的一招或者两招,下面教你的是如何六招联用,发挥无穷法力。第一式(WHERE):少商剑,剑路雄劲,颇有石破天惊,风雨大至之势中文意思,“在哪?哪里?”那在SQL里面where 主要用来干嘛呢?主要用来过滤数据集,所谓的过...原创 2020-08-02 23:35:46 · 398 阅读 · 0 评论 -
SQL中的空值、NULL以及类型转换那些坑
我们平常写SQL中遇到过滤空值或者NULL值的处理,尤其是在非关系型数据库中没有唯一键和默认值的约束要求,很容易出现NULL值或者空值。很多时候我们总是会出现困扰,到底是该使用=' ' 还是用 is NULL呢?另外我们一个多表JOIN的查询在这个SQL上跑的好好的,一旦换了一个SQL执行引擎就提示我们JOIN两边的数据类型不一致,这些都是为什么呢?今天就带大家一起领略一下各类SQL中空值以及类型转换那些坑。空值和NULL值一、底层字段类型为字符型(string,varch...原创 2020-07-31 10:25:35 · 4066 阅读 · 1 评论 -
一文带你搞定SQL中日期时间那些事
前语:使用的SQL多了不知道大家有没这样的困惑,SQL的语法大的方面是一致的,如SELECT,JOIN,GROUP BY等,但是在一些函数或某些特定功能处理上还是有很大差异的,而这些差异经常给大家带来困惑,尤其是一个新手从一种SQL转到另一种SQL的时候,总是抓耳挠腮,不知所措。今天就把大家常用的SQL语言做一个总结,来看看他们在日期时间处理方面的差异。前置说明:本文所用的日期时间均指:2020-07-20 10:58:59这种格式,时间戳指:1595932031这种格式。一、日期处理函数..原创 2020-07-29 10:45:05 · 357 阅读 · 0 评论 -
关系型数据库SQL优化指南
大家有没有过这样的体验,自己的SQL一跑跑半天,别人的SQL点一下结果就出来了,难道真的是别人的运气好?一次还好说,每次都是运气好,反正我是不信。毕竟技术人都是凭实力吃饭的。下面我们以关系型数据库mysql为例来分析SQL如何跑得更快。从数据库的本质来看SQL优化的核心就是两个方面:1、使用索引2、减少数据量。使用索引的优化方法有:1、where后面的索引筛选列上不要使用函数,如substr,concat,length,数学函数等,使用了函数后原本可以走索引的查询就会变为全表扫描,.原创 2020-07-23 10:51:38 · 286 阅读 · 0 评论 -
count(*),count(1),count(id)的执行差异
写在前面:在日常的SQL中,我们统计总量的时候经常会用到count,有些同学喜欢用count(*),还有些同学用count(1),甚至还有用count(id/字段),那么这些写法在执行过程和执行结果上有什么区别吗?今天就带大家解开这个谜底。count函数的定义我们看下mysql官方对count函数的定义,这里包含三层意思:COUNT(expr)返回selsct检索语句中expr的值不为null的行数,其结果是一个BIGINT类型的值;如果没有匹配的行也就是所有行都是null或者表中没有.原创 2020-07-21 11:06:46 · 511 阅读 · 0 评论 -
如何做一名合格的“CRUD“工程师?
如何做一名合格的"CRUD"工程师?作为一名资深的SQL_BOY,日常的工作肯定少不了“CRUD”,那这个被程序员吐槽的"CRUD"到底是什么呢?“CRUD” 就真的那么的那么简单吗?什么是“CRUD”呢?众网友给出的一致答案就是:"C":Create,建表、建库,插入数据;如:"R":Read或Retrieve,指的是读取数据,也就是查询数据;如:"U":Update,主要是指更新数据,包括全量更新和指定条件更新;如:"D"...原创 2020-07-17 00:38:50 · 4580 阅读 · 0 评论 -
一文看懂SQL的执行顺序
1:为什么需要关注SQL的执行顺序?看到这个问题,好多同学可能会说我能写出来正确的SQL,然后SQL能跑出结果就行了,为什么还要关心SQL的执行顺序呢?那么我们先回答这个问题,如果仅仅考虑能跑出结果就满意了,那确实没必要关注SQL的执行顺序。然而好多时候我们我们不是SQL不对,而是SQL跑了半天结果却没出来,机器没崩溃,可能你先崩溃了。所以,如果你想比别人快那么一点点的话,那就认真了解下SQL的执行顺序,这是我们写出漂亮SQL的关键。另外好多数据岗位的初级面试也会问到这个问题,不要以为这个问题很简单,实原创 2020-07-15 11:03:32 · 845 阅读 · 0 评论 -
运营必看的SQL(上)
SQL必知必懂的八大核心概念写在前面:如果你是一名程序员又恰好是一名SQLBOY的话,那么请移步,因为下面讲的实在太不专业了;如果你是一名想学会写好SQL的运营,那么你一定要认真读完。本文用通俗的语言介绍SQL和数据库相关的八大核心概念,每一个都是你理解数据表 写好SQL的关键,了解这些的同时你也对数据BOY从事的工作有了更深的一份了解。话不多说,上关键词:1、数据库(data base)我们首先看下数据库的百度百科:数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储.原创 2020-07-13 17:38:07 · 919 阅读 · 0 评论