当前位置:首页 > 每日看点

sql复杂查询语句看不懂,想不出是什么知识欠缺?

卡卷网1年前 (2025-01-01)每日看点272

太太太太太太太巧了。。。。

我可能是数据分析界,最能理解从SQL入门到工作中写SQL中间就差着一个"复杂SQL“这句话的人了。当年为了写”复杂SQL“,的是为了工作中写”复杂SQL“,整整花了我300大洋,求教了一个老鸟才彻底的把我的SQL能力惊醒了。不要一步到位思考复杂SQL

其实SQL也是分为入门-进阶-实战3个步骤的

----分隔符----

为什么简单SQL会写一到工作就废

如果我没有猜错,90%的人都看过下面这本SQL神书:

另外99%的人都用过下面这些SQL练习:

[

自学SQL网(教程视频练习全套)

](自学SQL)

这个特点是较清晰简单,中文的,马上可以练习,主要训练查询能力

sqlzoo练习,牛客网SQL面试题。。。。

-----非常非常不幸,我也是这些练习的重度用户----

如这个:

自学SQL网(教程视频练习全套)

我的是从头到尾,把所有的练习题目过了一遍,感觉自身的SQL水平飞速上升。那感觉的是没有哪个实际问题可以难倒我了。。

直到工作中遇到了”复杂SQL“,才彻底败下阵来。

我就举一个例子:

SELECTsum(Domestic_sales+International_sales)assum_sale,director, count(*)ascount, sum(Domestic_sales+International_sales)/count(*)asg_sale FROMmoviesleftjoinoxoffonmovies.id=oxoff.movie_id groupydirector hingcount>1 orderyg_sale desclimit1

----第一次看到这个SQL什么感觉?

好家伙,好像一切我见过的SQL知识点都用上了!但是我这个简单SQL的能力也彻底不知道怎么解释了。

幸好得到高人指点,最核心的一个思想是,不管多复杂的一个SQL,先要归结到最简单的SQL法则上。

凡是sql都分为,select,from,where3段,你复杂的sql也是这3段。

只不过,复杂sql这3段都不简单,那既然这样,我们就把它分开来解决就好了。

如上面的复杂sql,我们先解决from这一段,

SELECT* FROMmoviesleftjoinoxoffonmovies.id=oxoff.movie_id where1

你不要关心select和where的情况下,只关心这个from,并且想象一下这个from的联表之后生成了新的tale,我们叫t1吧。

这会,这条sql是不是一下就简单了。

---t1现在看一下t1的内容

把两个表连在一起,形成表t1,现在请你记住这个t1,我们的select和where作都在t1上进行

----现在我们把group等结果集作放到一边,我们先只关心select部分。

SELECTsum(Domestic_sales+International_sales)assum_sale,director, count(*)ascount, sum(Domestic_sales+International_sales)/count(*)asg_sale FROMt1 #放一边

你看,这个简单SQL就是做了几个计,每一个函数拆开来是不是很简单

---接下来,我们把select里的算法放在一边,我们去看看结果集的分组和排序

SELECT# FROMt1 groupydirector hingcount>1 orderyg_sale desclimit1

一个复杂sql其实都是由简单的部分组成,只要你按照这个方法一层层的拆解,你会发现复杂sql不过如此!

----未完待续

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/6101.html

分享给朋友:

相关文章

手机用久了,垃圾都在哪里,总是内存显示不够,还很卡,这可怎么解决?

手机用久了,垃圾都在哪里,总是内存显示不够,还很卡,这可怎么解决?

大家的手机在使用一段时间之后啊,是不是都会出现又卡又慢的情况,尤其是安卓手机,这种现象更是非常明显,而且很多朋友啊,也都知道手机之所以会出现这些问题,一般都是手机安装了大量软件,而这些软件在使用过程中会产生大量的缓存垃圾,因此啊时间久了就会…

用红米手机会很丢人吗?

前些日子遇到了一位快递小哥,京东的,签收 小哥年纪不算大,目测二十多岁 他的手机上全是一道道极严重的划痕,有点卡, 他开热点了,热点名就是手机型号,红米9a,我父母的同款 现在他那边操作了一会,然后又是我这边操作了一会 小哥看着我手机刷刷的…

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国? 国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。 可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。 跟亲戚朋友聚会,别人一看就知道他…

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法. 栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型…

为什么小公司留不住人?

为什么小公司留不住人?

我估计,整个知乎,可能没有比我公司再小得了,。。 正对面就是我唯一的一个员工的工位。 为啥留不住人。因为那些留不住人的老板,太拿自己当回事。 大公司靠制度。小公司靠人情。 我这儿的业务,因为全都是线上,所以员工来不来坐班都不重要。 天太…

为什么张雪峰什么专业都懂?

他不懂专业,他懂的是就业。 我记得有个老哥,家里条件不好,母亲吸血。想脱离家庭 张雪峰眼睛一亮就说这是个学土木的好苗子。 作为土木人我可知道他说的太对了,这种人学土木毕业进中建中铁,直接给你拉非洲看大鳄鱼呲牙。 工资不低还能脱离家庭,可不是…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。