00:00
好,我们看一下这个蚂蚁的一个题啊,就是那个学生出去面试的一个真实的一些题啊,而且呢,其实里边的数据大家也能感觉到,嗯,啊,这个是。我把数据,我把数据改了啊,应该是原始数据是这样,我找一下原题啊,给大家看一下原题,因为原题里边呢,能看到一些东西,这个资料不是在这。杂七杂八吗?不是。授课资料,这个我记得应该是有一个原体啊对,这这个是他这个原体,你看这个数字你还熟吗。没问题吧,就是你那个树的。需要的碳排放量是吧?啊量排放量是这个东西吧,然后这个是不是你每天点那个小绿圈,小绿圈啊点一下对吧?啊说一个能量,这是他原题的数据,我把它精简了,首先呢,我把流水号改掉了,因为对我没有用啊,第二个呢。你看这是十一百一百的,你要加到这个值,你得造多少数据对吧,要做很多,所以让我把数据给改一下,我把那个后面两个给干什么,给它去掉了,大家有的同学去看的时候也看了,因为不影响逻辑嘛,对吧?啊在这有一个。
01:16
本来是17900,我改成一七对吧,无论是一七还是17900,写出来S会有影响吗?没有吧,啊,所以呢,因为这个我就可以少造一点数据啊,他没有提供那么多数据啊,我就少造一点数据,我造的数据呢在这啊,这两个数据呢,都可以直接去啊导进去了啊造了一些大概是16个人吧,我记得15个人。15个人,那就15个人啊,总共有15个人,因为要前十名,所以15个人是够了啊,15个人够了,好,然后我回过头来,刚才呢,说我们所讲的这个数据集啊数据集,那我们看一下这个整个的一个数据,第一个表叫user cover,就用户的一个低碳对吧?啊,用户的一个低碳,它里面呢,呃,其实原题当中呢,是有四个字段。有个流水号对吧,有个流水号有个UID一个对DT有个low卡,那这个流水号其实对于我们当前的分析呢,作用不大,所以呢,呃,我简化了一下,变成什么三个,其实你加上它也无所谓吧,就是一个字段,因为你又不对它进行一个什么数据处理啊,这第一个第二个。
02:18
叫职务编号。职务名和。换取植物所需的碳。啊,所需的碳,这个大家也都了解,还有个问题,那我们直接看题。第一个他说假设从17年1月1号开始进入第三数据。假设从这一点开始了啊,然后。同时又假设10月1号之前满足申领条件的用户都申领了一颗,诶这边。在这。P004胡杨。啊,假设满足的,也就是说满足其实就是大于弘氧那个值对吧,大于等于这个值啊,都领了一颗,然后说其余的能量全部用来申请下一步。
03:05
啊,问题是这样的统计,在10月1号累计山岭沙柳棵数排名前十的。以及比他后一名多领多少颗沙,难点在于哪?这就好了。前面这一堆能不能做?首先按照道理来说,17年1月1号。这个数据有用吗?其实没用,因为他说了,他说假设从这个开始记录,你就没必要写DT大于等于1月1号能懂这意思。因为他这才开始的,我只要小于等于17年11号是不是以往所有的数据过年。有问题吗?OK吧啊,其实它这个数据啊,从它因为它都是假设的嘛,那也就是说假设的过程当中,这个数据对于我们没有用,当然你说DT,然后把格式化一下,说大于等于这个2017年1月1号也可以能懂这意思。
04:05
对吧,啊,大于等于,那这个数据有用吗?假设在这个之前啊,因为现在可能是一九年什么什么样的一个数据了,对吧?啊,一九年什么样的数据了,那这个数据还有用的,那你这个时间要小于零,它这就在必要条件里面过滤吧,啊至于这个自符振怎么处理,我们再说对吧,好然后说。满足生理条件,那满不满足我们怎么看呢?是不是按照这个人进行分组,求总的低碳减少排放量?求总数吧,啊求总数OK,那接下来是不是减去。胡杨的除以沙柳,而且这个除要取什么取整?对吧,啊取整取整这种方式了啊,取整啊不要取模啊,最后搞错了对吧?啊取整这块要注意一下。
05:03
是取皱嘛,因为要整数颗嘛,假如说不够,说有人你们有人领到了5.3颗小六嘛,没有吧,啊不过就理不了对吧,所以呢要去整啊,这一套呢,我们都会做,那我们快速的把这个东西给他干么?先写出来吧,啊因为后续问题我们后处理,因为这个东西他说他以后一经多领多少个沙柳,一定在你前十名,每个人多少人个沙柳领出来之后才能计算的值,对不对?对吧,好,那我们先把它单独做一下,呃,这个地方呢,建表语句已经有了这两个,这表语句呢,我都给他干什么。一块给他见一下啊一下。啊走两个都建一下,然后呢,数据我给它拖进来告加cdd Mo这个点。啊,放在电台里边啊,然后我们把这个数据给它拖起来,这两个数据。可以直接拖进,拖下之后呢,我们把这个数据加载一下,我看一下应该是对塔没问题啊。
06:06
然后查一下谁like she from,一个是叫use。没有数据吗?啊,这块有问题啊。哦,应该是这块的问题吗。你这个,嗯,文件名,文件名不对是吗?我没有按照这个改一下。那我按照文件名改下,对,改好了之后我就改一下吧。这个就是。这个是吧,先把他改成。哎,这个第二个是对的,对吧,第一个啊,第一个改一下。优卡文迪。把他重新倒一下就行了。
07:04
From这个什么user company,嗯,在这。好,这个数据有了,嗯,然后还有一个新,还有一个对吧,应该表明也在他在这表明下。啊,也有数据了吧,啊数据都有了,那按照我们所说的第一步我们来写一下,还有一个点,这个东西我们设置一下,提前说一下,就是设置本地模式,因为现在都是提交给雅安去运行的,对吧。比较慢吧,啊比较慢,那你把这个东西呢,给它设置一下,它能加快一点速度,就类似于你在那个呃,Idl里边跑MR证一样。A店里的跑得快,还是你打包扔了继续跑快?Idea看啊,这个就是本地模式啊,Look模式了啊,这块要注意一下,好,然后呢,我们来写这个需求啊,写需求第一笔。啊,第一第一步应该怎么要求什么东西,按照我们刚才所分析的。
08:02
求总量吧啊,然后统计。统计什么东西?每个用户。截止到。2017年啊,应该这样截止到。幺零杠零幺对吧,那应该还是斜杠对吧,按照他这个数据分析的啊,零幺截止到这个日期,而且他这个10月1号还这样写的,所以呢,这后面应该是一个什么。这个一。应该是这样的数据啊,我们这样写,截止到这个日期。总低碳量对吧,啊总的低碳量,那首先总低碳量很好写,其实。每个用户,这个用户要不要呢。用户名叫吧,是不是有一个优待D,然后是some什么。
09:00
对吧,OK,那按照来求,然后from这个什么。User这张表。没问题吧,然后之后重要的是在于哪。围着吧,啊,围着好那。现在他给的数据格式啊,是这个样子的啊,官方给出来的也就这种样子的。这种样子的数据。对吧,那现在我们要用这个数据来跟10月1号进行比较吧。我们是不是要计算出来10月1号小于10月1号,对吧,那这个我怎么写。我直接用什么这个他DT。说小于。10月1号行吗?写一下这个字符传2017不行吧,主要原因在于哪?实际上字符传也可以这样比,主要就在于我刚才提示大家了,他这个一月啊,它不是零一。
10:08
如果说它实日期啊,它按0102这种方式,你可以直接比,因为字符串也可以直接比的,字符串可比这个就不行,不行的话我们怎么做。化,那就对这个日期要做处理吧,要做处理啊,格式化一下,化下,那怎么做给他好骂。括号这条风暴的两个参数。第二个是不是歪歪歪歪。啊滴滴,那其实这个滴滴啊,我们要想一下,呃,我们需不需要那个10月1号这张这一天的数据。截止到如果说不要10月1号这条数据,是不是我想一下我到这个层面就够了。
11:04
小于10月1号就够了吧。对吧,啊,小于10月1号,如果说10月1号这个数据要。那你必须要加上天,然后写小于等于2017年10月1号对不对。想一下对吧,因为你写到年月的时候,你不能写小于等于什么2017杠幺零吧,因为这个可能10月2号到301号就给你给他干什么,包括进来了啊,假如说这块呢,我们就不要这个10月1号的数据啊,这个就是跟业务去讨论啊,到底怎么做,因为会影响到你这个取值范围啊,对吧,啊取值范围好接下来前面。电风棒的只能分析什么?杠,所以说这个里边还是同样的下划线对吧。Replace括号replace是不是三个参数?对吧,第二个是斜杠,第三个是我们要的横杠啊,第一个呢。
12:02
是不是字段名叫贝塔?DT,对吧,好,这个东西假如说我不要,那就小于什么2017杠幺零。O,不OK,没问题了啊,那这个东西我们就把总的低碳排放量给它求出来了。啊,对,分组。应该还是按照一个快,有的ID按照一个人按照一个人,这个呢,就是每个用户截止到10月1号总的第摊来货量这个东西,诶这块怎么又是。这前面table。三四。复制一下。前面推不好键,就等会粘进去,一运行它就给你好多提示,对吧?啊这个就可以了啊,来把它走一下,把它走下。第一啊,第一这个是第一点,好,那让他再去跑着啊,应该问题不大,那第二步我们应该做什么事。
13:09
然后减去,减去胡杨。那胡杨解呢?是不是应该从低碳就植物那张表里面取出胡杨的?那个量啊能量嘛,对吧,好,那让我取出。胡杨的,什么胡杨的?同理,是不是最后取出来减值之后要除以沙柳对吧?啊除以沙柳好,那第三步是不是取出沙柳啊。能量。诶能对好能来,那这个东西就选下。呃,要能量只要一个列,嗯,第二个列我看一下叫什么。
14:01
叫对吧,我看一下ID。Select cover from这个plan cover,然后然后应该是ID。等于什么P004。P004,因为他在这个里面给的是什么。P004欧阳对吧,那我们就用P004OK吧,啊P004好,那接下来同理,我们应该把这个再复制一份。这个写P002对吧,啊,它是第二个啊,他是第二个是这个内容,好,那这个结果我们看一下,诶总共有15个人,每个人低碳排放量都拿出来了吧。好,我们继续。那接下来我们要计算的就是什么?每个人申领沙柳的棵数。
15:00
对吧,好计算每个人。山岭。申领沙柳的可数。啊,可数好,这张表呢叫做什么?这张表把它叫做T3啊,虽然查出来一个字段,人家也是一张对吧,那T跳T3放在一块,这个东西我们生理上有的棵数select。U直接放在这吧,好,接下来这个东西我是不是应该给它取个别名啊,要用了对吧,谁叫long come。啊,我看迭代好,那接下来求。这个地方。应该是上这个值减去T2点。这个东西是不是应该用一个。括号给它括起来,对,然后再除以谁三点什么,对吧?啊,等会是不是还要我们要做什么。
16:06
取整。对吧,啊,取整我们再聊啊,等会再聊取整麦斯当中怎么去。对吧,这边一样,我们取一下,我们先把这个整个的。逻辑给他捋清楚啊,给他清楚好,然后接下来第一第二第三。啊,第一第二第三这个我记得应该1234。1234啊,同样123好,那这个东西来搞定。啊,第一条三大家写一下,那把它跑一下吧,拿过来看一下结果,看结果,第一条三既然是这样的话,我应该给什么分开第一表来,是不是把他拿过来。把它放在这第二表,再来一个什么括号。
17:03
二。给他拿过来。啊,放在这里边T3是不是也有一个子差啊,对吧?啊也给它放进来。然后呢,整体干什么去。好,现在呢,我们得到的是这个内容。这样我们接下来要做什么事?取整啊,取完整之后还有一个事情。最重要的。取之后是不是要的数据要前十条,然后更重要的是这个点啊,重要的这个点,我们先把这个解一下,这是前一部分。
我来说两句