00:00
刚才我们看到的是基本的一个数据类型啊,接下来这几个呢,是它have当中比较复杂的一个数据类型呢。其实这几个类型啊,对于于我们来说其实并不陌生,你看一下。卖号A,瑞数组是吧,但这个相对来说可能认识的人比较少一点,做过C的人应该会知道是吧,它其实是一个结构体是吧?啊结构体啊,它里面可以包括其他的很多的一个数据类型在里边呢,它一个结构体,然后看一下它是其实这两个用法啊,跟那个JA法当中数组你看啊,语法就是map跟瑞很类似很类似,但是我们要用一下用一下。首先有这么个数据啊,我们把数据拿一下,我们要对这个数据进行建表,然后查这个数据啊,那怎么来做新建一个文件,看到这我们再看一条吧,看一条更清楚一点是吧。
01:14
送老带过你们说过吧,你们那说烤是送老带过就送了。这就是,哎,我我那个文件呢,不是说说送什文件丢了呢,嗯,算了,我们重新弄一个是吧,宋总宋总又来了,学搜给宋总上场好,然后这个属性就是它的一个名字,第一个是名字。第二个。是他的一个好友friends这个链,那这样看来他是一个。数组吧,你要用数组来存储吧,你要用数组来存储的啊,因为它会有多个,但是数组中间的分隔符。
02:10
是一个下划线,你或者你不用下划线,你用这个其他的也可以吧,可以啊,然后这个东西看你要注意啊,逗号,每个逗号是一个字段,知道吧,每个逗号两个逗号之间是一个字段,那这个字段是不是这么长啊。这是抽的是吧,孩子小宋跟小小宋是吧,然后冒号18,那就知道是什么吧,年龄对吧,这个为什么小小宋18岁,小小松还19。这是很奇怪是吧,你就不管不管那么多了,它这个里边呢,同样的它也是拿。下划线分割的两个值,这能感觉到吗?就是两个。然后呢,他这个里边存了一个姓名一个年龄。
03:05
啊,是这种结构吧,啊,你先先这样,我把这个拿开来,把逗号全部拿开来啊,就每一个是一个字段,首先是有四个字段,这没问题吗?就是你这个数据库呢,不是数据表,你建表的时候要有四个字段,那第一个字段是name,然后string类型的,我们知道这没问题对吧?第二个字段是好友friends,它是类型的。类型的,然后它是一个数组,然后数组是有分割符的,它是按那个下划线分割的。下划线分割的好,第三个是什么类型的?Ma吧,哎,能感觉到它是一个一个的键值,对吧,它里边是有多个值,但是是其实是有两个键值对的啊,K和Y6K是姓名。Y6是年龄,年龄那最后一个回龙观北京。
04:03
这个东西你要说它数组吧,它也不是并列关系,你要说它是map吧,它也不是map,那我们可以引用我们刚才还有一个structure,什么结构体是吧?啊结构体,那你结构体里面存两个string就OK了啊,就OK了,是这样的,我们来看一下它的一个见表语法来对应一下,把那个粘过来。放到这,我们把这个调成circle。烧烧烤好看一点是吧,有点颜色了。好,创建一个表,这没问题,这是正常的吧,然后表括号里面是不是它的四个字段啊,然后字段注意分析一下,第一个是姓名string类型的,这没问题吧,好,然后这friends是那个列名吧,然后后面跟着是。
05:02
String,但是那个里边每一个是一个什么string类型的吧,啊基基本的数据类型,你要有是病类型的,然后车诊查孩子吧,小宋跟小小宋啊,他是map类型的,那这个map呢,是不是一个姓名加上一个年龄是吧?哎,所以它的类型是一个string加一个in。一个three加一个,然后最后一个是地址吧,北京回龙观吗。是一个地址address,哎,这是它的一个这个列名啊,这没问题,那后面就是它的一个。类型吧,它类型是一个扎一个结构体,那结构体里面其实存了两个。两个string啊,存了两个string,但是这两个string呢,它分别给它又取了个名字啊,你要取名字的,当然其实你这个结构体里边可以套RA,可以套ma,这也是可以的。
06:11
也是可以的,因为你能感觉到这个结构体啊,它是不是就等于套了一个,相当于套了一个列进去了这种感觉啊。对吧,啊,套了一个link,它里面也可以套这个map套啊,其实这个相对来说还好理解啊,更重要的是下面这些人。下面这些内容来看一下啊,第一行慢limited。就是说每一行数据的一个格式的一个限制吧,其实应该这样去理解,把这个分割开,分割开这个是总体的一个限制,然后这四个。是对于不同的结构啊或者类型啊,它的一个。
07:02
线一个分割符,首先看一下field是什么字段吧,哎,字段与字段之间的分割符用的是逗号吧,刚才我们说了,哎,一个逗号等于一个。字段,哎,所以它的分隔符是逗号,分隔符是什么。这个数组,这不数组吗?分割符是不是下划线?Map的分割符是什么?Map map分割符下划线吧,啊,多个多个数据之间的下划线,它是一个collection。Items。它具体的这个集合或者map,它多个数据之间是有什么分割的,对用下划线分割的,那map kv是不是用冒号分割的呀?Map k特命类给的板冒号。
08:00
啊,冒号分割的,然后最后一个其实你不写,它默认的就是杠N,行分割符是不叫杠N啊,啊,其实你不加也无所谓啊,最后一个就比好理解,之前我们是不是创建student那个表的时候,并没有写这个行的分隔符啊,哎,因为它默认的就是杠N,它自己就会读取到把三个分成了三个不同的三条不同的数据吧,对吧,因为它默认的就是杠N,最后一个就是行分隔符。其实这个东西啊,是总体的对你所有的分隔符的一个限定啊,具体的你当中用到了什么。类型或者什么其他内容,你的分割符要单独指定。问大家个问题啊,如果这个地方我加一个字段,然后这个字段也是也是。那想想它的一个分割符要写成什么?对,这个地方必须要写成下划线。
09:00
就是你的表里边,就是你的数据里边啊。你所有的你要用同一个字段的同一个数据类型,你两个字段都用到的话。必须要有相同的分隔符,因为在你建表的时候,这个地方你只能指定一次,你并不能针对于某一个进行指定,懂我的意思吧?也就是说,如果你真的要用到多个相同的数据类型,假如多个的话,你一定要。在把这个数据传入到have之前,要对它做一个清洗,ETL。你把数据给它规整一下,才能放到里边。你至少你要用多个数组的话,你要保证每个数组都是用同样的分隔符,那也一样啊,那它也是一个集合。就是你这里边我们用了一个array,一个map吗?你看它的分隔符都必须写成下划线,当然你这个不一定非得用下划线,对吧。
10:01
就是你分割符要保持一致。啊,因为它在建表的时候只能指定一次。啊,只能指定一次。好,那我们把这个执行一下,创建这张表,然后把数据导进去吧,看一下这个是我们仅仅是创建了根据这个你的一个文件的一个格式啊,创建的表,但是你真正要查询这个数据。还不一定怎么长呢,是吧,因为它涉及到ay啊,然后什么map啊,还有一个结构体啊,哎,这种类型它取出就是怎么出取的,那我们先把表创建一下CTRLC。这走一下表已经创建完了说。Test这个表吧,然后接下来我们就弄一下这个数据是吧,数据CD点点到对里边,然后VI一个TST.tst。
11:03
然后把我们的这两条数据拿一下吧。这两条。过来。保存最多,接下来是不是把我们这个数据加载到这个探里边,这样我们尝试一下。Put进去可以吧啊,我们不用加载,我们看一下啊,这地方又多了一个test吧,我们只需要把数据放到这个文件夹下,是不是可以了呀,CTRLC拿过来这个目录,然后是hard。FS杠,然后是那个什么。这个文件吧,到刚才我们这个下面走你。然后刷新一下已经有了这个文件吧,已经这有了这个文件,那首先我们不管这个数据怎么调用,我先查一下这个数据有没有导进来吧,我先让我的新看一下from这个test这张表。
12:10
数据没有问题了,还是能导进来的,你看这就是数据能导进来,你看它的数组。中括号吧,然后map是这种形式的。然后结构体啊,结构体是这样的回动管啊,它会把它这个前面那个属性名都要放在里边啊,接下来就是如果说我我不能每次查询我都是的心吧。那我要具体查某一个具体的内容,怎么办呢。正常的加法当中,如果你要取数组里边某一个数据,怎么取啊?是不是加角标啊,慢法呢,取值怎么取啊,是不是把K传进去啊,哎,把K传进去就在have当中啊,它也一样。
13:05
来看一下,这个是具体的。这个是创建表啊,然后最后是取值在这。因为这次我们不是通过这种方式加载进去的吧,我们直接是put上去的是不是,当然你加载进去肯定也是没问题的啊,也是没问题的,我们需要把这个拿出来看一下。这里面涉及到就是三个,三个不同的什么。复杂结构的它的一个取值方式,第一个friends,我们是数组吧,啊,我们取第一个一。哎,我们取一看它到底是冰力还是丽丽,对吧,我们就知道它到底这个数组在汉里面数组它到底是从零开始的还是从一开始的,这能知道吧?好,那map呢,就简单了,Map就是你这个属性加上它的一个P是吧。
14:05
加上K取值,那小数应该是18 18,然后结构体的取值方式是。点点的方式来去取的,那我们执行一下。我没有加限定条件是吧,我没有加限定条件,那这对着呢,首先我们这个就等于是全表的数据扫描,应该加一个v name等于宋总是吧,我们就看看一下宋总的就OK了,他现在是不是把宋总跟丫的都拿出来了呀,哎,两条数据,那我们看松子。分子一应该能看到是。后面的吧,啊,也就是说它的角标也是从零开始的,跟插法当中一样啊,然后初的啊就不用不用说了,18小宋,然后最后cityt北京吧,哎,北京就是这样,它是各个数据类型,它不同的一个取值,它是怎么取的?
15:08
啊,其实跟我们Java,既然它的一个结构跟Java是类似的,所以它一个取值方式呢,也是跟Java一样的,OK,这是我们所讲的它内部一些比较复杂的一个数据结构啊,当然这个数组我们后面是会用到的数组,这种方法会不会会用到的。
我来说两句