数据分析一定要懂的SQL知识

1.从理论上来讲

数据库操作可能包含以下几大类:


数据操纵语言:单表/多表查询就不用多说了,select查询;数据更新如

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

数据定义语言:主要是表/索引/视图的创建,索引的创建是比较重要的概念,索引应用的如何直接决定了你的任务处理时间或处理效率,这一块可以好好看一下,例如:

以下两种情况下,title创建了索引,那种情况会失效?(文末回答)

A:SELECT * FROM test_a WHERE title LIKE '5000%';

B:SELECT * FROM test_a WHERE title LIKE '%5000';

视图也同样很重要,视图的灵活运用也可以给你提高效率。例如将一些常用的业务需求创建为视图。

实体完整性和参照完整性:好像听起来比较抽象,这个说的意思主要是让你掌握创建表的主外键

数据控制语言:主要内容为授权与回收,真正的在公司里,你是不可能真的对某一个库或表拥有较大权利的,你的账号基本上就是授权了select的权限,或者你只能操作某些表或者库,这就是授权与回收的意思。一旦操作不当,全给你删了啥的,是不是很崩溃~

数据库编程:这个主要是存储过程和触发器。

触发器就是你设定好某个触发条件,一旦符合了该条件就会执行相应的操作。例如在学生表中每插入一个学生,就引发触发条件,将这个学生学号插入到学生成绩表,成绩默认为0.

CREATE

    [DEFINER = { user | CURRENT_USER }]

TRIGGER trigger_name

trigger_time trigger_event

ON tbl_name FOR EACH ROW

  [trigger_order]

trigger_body

存储过程更像是定义一个函数,你创建好了这个存储过程,然后调用就行。

以上算是对数据库操作的一个简单总结,可以从更宏观的角度大体有个认识;

2.实践上

如果真的工作,会发现平时做的更多的时候数据操纵语言,写各种SQL,简单的,复杂的,有的SQL长达好几页长,涉及到n多的中间表之类的,当然了,你如果没有一口气写出来的勇气,可以一步一步的来写,这都不是大问题。主要是,这里面有原子操作你会经常用到:

过滤和投影:也就是where条件选择和查找某几列的意思,这个一般数据库或者大数据引擎都做了查询下推的优化。

连接:自然连接大家都会,但是更多经常会用到一些左/右外连接等,这个可以看看区别,其实就是以谁为基准的区别,左外连接,以左表为基准,右表没有的填null;右连接也是这个道理;

分组聚合:分组和聚合本是分开的,但是一般分组都要做一些统计,这里很重要的点,也是面试经常会问到的,就是分组操作和条件过滤之间的先后顺序的问题。

select a,count(a) as ac from tbl1 where a > 3 group by a having ac>4;

文末回答

排序:这个没说什么好说的,就是排序。

哦对了,还有一个distinct,现实中的数据往往挺乱挺复杂,我们经常会用到distinct看看没有重复的到底有多少之类的。

好啦,基本上我感觉上面的这些,如果你有了一个大体的认识,再去有重点的看一些例如索引,having的执行次序这些东西就差不多了~希望有所帮助~

文末:

我就是文末,我来回答上面的两个小问题把,回答的不对大家可以指正:

1.如果LIKE是前缀匹配则会命中索引,否则不会命中。另外以上的查询结果为空,但是不影响说明索引的作用。

这要从索引的实现上来讲,索引一般用的是b+树来实现,如果你前缀匹配,可以从树的顶点往下匹配,至少可以匹配几回,但是如果前缀没有,查询引擎只想对着这棵树吊死~

2.tips:先where条件过滤,再分组,分完组统计完再通过having进行筛选


数据分析人员需要掌握sql到什么程度? - 小贱的回答 - 知乎

https://www.zhihu.com/question/379694223/answer/1167020779

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容