00:00
好,那接下来呢,还有一个也是建表的时候导入数据的,也是建表的时候导数据的,通过location来指定。位置啊,通过location来指定位置,通过这种方式也可以啊,那我们可以这样做啊,首先呢,我得放一个数据的啊,到时来嗯,我现在我想看在这个地方,假如说我再来一个什么,我在在这个目录底下创建一个四可以吧阿对吧,FS杠创建目录准备个诶我刚才没复制上啊,把这个呢复制一下,然后呢,我们来一个STUDENT4啊,创建一个这个目录,好有时间四了,然后接下来我需要把这个FS。
01:00
告good student这个文件呢,给他扔到哪了?STUDENT4里边,好,STUDENT4里边,那么这个时候啊,我们可以通过location,这种时候我甚至都不用指定location,因为呢,如果我创建的表叫STUDENT4。那么他自己的位置是不是就在这对吧,其实就跟这种方式是一样的,那我们先看这种啊,我先create table student4这张表,然后呢,还是一样的ID,什么name,然后还要写那个。Form对吧?呃,这个东西写的就比较一点,写多了大家应该就能杠T是吧?啊杠T分割的啊,创建好了,我没有指定location,那这张表有没有数据,有吧,其实跟我们之前所说的铺的那个东西不一样的吗?他肯定能查得到啊,用这种方式,假如说诶这个数据路径刚才我创建的,我是不是故意在这个vhouse底下去创建的呀,对吧,它恰好是我们默认的是吗?
02:19
位置信息对不对,假如说不在这,哎,我再来一个,我随便在这底下放一个什么东西,对吧,我创建一个啊,好多那个跟底下我来一个的。目录OK吧,好,然后接下来呢,我要做个设计,他都跑F-put还是一样的student.t给他扔到哪啊,扔到这个student的湖里边。那如果说我这个时候还直接用这种方式去创建一个五,它有数据吗?他肯定没有数据对吧,因为他的路径在哪啊。
03:07
User在user have will host student里边默认的路径,对吧,但现在我想要它直接能查到数据,我就要把这个路径指定到哪啊,指定到这个位置是不是对吧?所以呢,我们就要加一个参数了啊,加一个location来指定一下它的位置信息。啊表呢,我们要放在这走一下创建好了,那这个时候C的心from什么股能不能查到也可以啊,也可以用这种方式啊也可以,但是一般如果说生产环境当中,如果我们真用这种方式的时候,往往呢,我们会用外部表。能理解这个是为什么要用外部表,因为这个数据是可能是其他人上传上来的,人家可能要用,对吧,人家给一个路径,你可以对这个路径进行建表去查询,这个都没有问题,但是你要建内部表,万一你用完了,你给人删掉。
04:16
对吧,还不像你在你的整个的之前建的表放在默认位置的,默认位置的,因为我发现把数据导过来的时候,它是不是都移动进来啊,对吧,我删掉也无所谓了,对吧,反正在我这里边,但是如果说你既然想用location去指定一个位置信息,去读取人家的数据,真人家可能是人家放的数据吧,对吧,人家放的数据你建一个内部表,你一删这个文件就怎么样。没了对吧?啊,所以对于这种情况呢,往往我们使用外个表啊,指定路径的方式去加载数据,这个也可以,就数据先有我去建表,然后我把直接把表建在那什么。存在输进的数据的这个路径上,对吧,我们把表直接建在这个上面就可以啊,这种方式呢,也是能够查得到的啊,这个地方它的一个位置信息就在这了啊,因为我们没有用默认的,没有用默认的,而我们刚才所说的as select以及这个location去指定位置,这种加载数据方式呢,都是通过什么。
05:21
建表的时候去加载数据的啊,建表的时候,那你要往后再想往student的五里放数据。用load或者说insert对吧?啊,这样放数据的时候,就是说表已经存在的时候,就用的是load insert,表不存在的时候,我们可以用create table这种方式指定位置,或者说as select这种方式。对吧,所以看上去四种它应该是分为什么两类啊,它不同对吧。
我来说两句