00:01
好,同学们,我们接着上午的往后聊啊。上午的话,我们主要是,嗯,把这个。写入啊,然后讲完了,就是我们讲了这个单条的写入,然后讲了批量的写入。OK吧,行,接下来我们讲一下这个修改和删除啊,那我们先讲一下这个修改吧。好,现在修改啊,呃,这个修改的话,嗯,我们在讲这个DSL的时候呢,是说过两个啊,一个是就是呃单条修改对吧,单条修改。对吧,然后还有一个是这个条件修改对不对,嗯,就是这个条件修改啊,就是基于这个。Query啊,就基于这个查询条件,然后进行修改啊,这个条件修改啊有两种啊,诶怎么没了呢?对吧,它有两种啊呃,先来说第一种吧,啊先来说第一种啊,其实这个整体来说,这个修改的操作我们呃将来其实用的是很少的啊,几乎是不用的啊,但既然我们讲APM,那我们就把它这个聊一聊啊,来说一下这个修改啊。
01:15
那我就写个就叫update吧,Update啊。现这个改怎么改呢?呃,那还是去找这个对应的方法啊,我们通过这个C去找一个方法,就叫做这个就找update啊,诶update。对吧,然后这里面需要我们穿什么东西呢。你看一下啊,首先还是需要传一个叫做update request。后面还是一个request option啊,这个我们应该很熟了啊,就是你在做什么操作,那你就传一个什么操作所对应的一个请求啊,这个request就是请求的意思啊,那我们就又上一个吧,叫做update。好,Update这个request啊,好,又上一个update request。
02:04
OK,好,接收回来啊行,然后呢,把这个东西呢,直接就放进来,放进来以后呢,后面是一个request option的一个什么default。对吧,啊,那你说你修改的话也是一样的啊,你得告诉我你要改哪个索引对吧,说这个索引的名字的话,我还是把它写到这吧,我们还叫这个,呃,我看看啊,它这里面好像。你看啊,除了这个索引之外的话,还得告诉我这个ID是谁对吧?啊,当然如果说你不在这里面写的话呢,也行啊,来我们写到这里面吧,Movie,呃,CH,那ID的话呢,那你就告诉我改谁呗,那我们看一下啊,我们有很多数据哈。查一下,比如说改这个,呃,改谁啊,改1001吧,好吧,改1001这个ID啊,那我把这个1001的写到这啊,好,那如果说你不想在这写的话呢,呃,它这里面都有方法啊,比如说你看啊。Update request,然后呢,比如说你的这个index可以设置的吧,然后这个ID是不是也可以设置的呀,对吧,就通过方法设置也行,然后通过这个构造器的方式设置也可以啊行,下面就是你说你要改,那你改什么东西啊。
03:11
对吧,你改什么东西啊,这个怎么写呢。啊看一下啊调什么方法,这里面他让我们传的是这个dock。呃,为什么传do呢?呃,其实大家注意哈,这个我们讲的这个API哈,讲的这个API哈,它其实基本上是跟我们写的那个DSL是,呃就是基本上是一一对应的,就是你DSL中你要怎么去写,那我这个API中我就要调用什么方法。啊,我不知道大家还记不记得,就是我们在DSL中写的那个修改哈,我给大家去找一找,找到你就能够知道为什么写那个dock了啊,修改。就是过滤修改对吧,在上面的啊找找啊。呃。
04:01
找一下啊,我看呃。这是整体修改啊,然后这个是那个。在这对吧,就是我们讲的那个什么update,是不是就是按照你的什么这个do ID,然后呢,做这个修改,然后我们在改的时候呢,你看一下它里面就要求我们传上一个什么do。是不是啊,Do里面就写你的字段的名字,然后呢,字段的值,就是你要把什么字段改成什么值啊,那如果说你这个能够写的出来的话呢,其实你就可以什么把它翻译成我们的这个代码,你看一下啊,我们来到这个代码中,你说我接下来调什么方法呢?其实它就是调这个dock,能理解吧,就调这个dock就行了,就是你需要写什么东西,你就什么直接把它什么,呃,这里面你要写什么东西,那你就对应的啊,到你这里面去找什么方法啊,它基本上都是一对应的啊行,那这个do的话,你看一下我们要指定一个什么呀,字段的名字,然后指定一个字段的值,对吧,说这里面你看一下啊,我们应该怎么指应。呃,我看看啊,我们指定哪个呀。这个就可以了吧,有一个S,然后呢指定一个字段的名字,然后呢指定一个字段的值,这不正好两个参数吗。
05:05
是吧,这样应该就可以了啊,行,那我们写一个吧,比如说这个1001的话呢,嗯,它是这个速度与激情,那我就把这个movie name给他做一个更改吧,就第一个参数,我给上一个movie的name对吧,然后呢,后面这个参数的话,我给的就是一个具体的名字啊,它是速度与激情一是吧,那我就改一下吧,嗯,我不叫这个名字了吧,我叫。叫什么呀,叫功夫好吧,这个功夫啊。准备做一个修改啊,行,那你把这个写好以后呢,接下来我们就可什么直接去做这个修改操作了啊,来把这个调用一下,看看能不能正常做一个修改啊。嗯,看一下啊好,直接调这个update就可以了啊,走一下。OK啊呃,这个程序是正常执行完了啊,然后这里面有一个这个error,这个这个不用管它啊,这个是找不到一个,就是日志的一个实现啊,我们现在不管它,我们主要是看数据啊,看改了没来就看它啊,那我就查一下啊,这个拉到最下面啊,我们大家把它查一下。
06:16
呃,看一下啊,找1001的啊,1001。在这吧,这不那个1001吗。是不是啊,这个数据什么正常什么进行了一个修改。能看到吧,啊说这个修改就是非常简单的啊,你就什么基于这个呃ID啊单条做修改,你要把你的这个改的那个do ID指令上,然后呢,改哪个字段,然后改成什么值。啊,这样是比较简单的啊行。那这个修改除了这个单调修改之外,我们还讲了一个就是基于条件的一个修改啊,这个我不知道大家还记不记得啊,我们再来找一下啊条件修改。就是呃,像我们这个写的比较复杂的这个DSL,你将来要转化成这个代码的时候,你最好是照着你的DSL,然后去做这个转化,要不你其实你也不知道该调什么东西啊,呃,我找找啊,条件修改。
07:04
呃。条件修改,诶过了是吧,找一下啊,我们之前写过的啊呃,范围过滤修改啊,就在就在这对吧,就是我们写的那个修改操作啊同学们。对吧,你看这就是我们写的那个修改操作,嗯,我把它这个定个图吧,好吧,定个图拿过来啊好拿过来首先你看了哈,这里面你在写代码的时候,它是一个条件修改,那我们正常应该调的方法就是什么update by query啊,肯定会有什么对应的这个方法啊,比如说你来看一下update by,什么by query啊,我写一个我自己写一个方法,然后这里面就什么直接什么client,讲什么update。BY你看有没有?有的吧,啊,你就什么照着你这个DSL去做这个转化啊,行呃,那我们这个传参数啊,它需要传一个update叫update by query的一个request OK,那我们就什么给他去尝试扭一个啊,用上一个update。
08:01
Query的一个request,对吧,你要什么东西,那我就给你准备什么东西啊,这就是我们这个写代码的一个顺序啊,后面是还是这个request option讲这个default。然后到吧,啊,那接下来你看一下啊,这里面我们要写什么东西,这里面首先啊,你是一个by query by query,那你首先要把你的query给它体现出来,对吧?然后其次的话就是你要改,你要怎么改呢?你得把这个东西给它体现出来。说这里面应该是两部分啊,一个是query部分,一个是这个update的部分。能明白吧,好,那现在我们要改的话,我们就不改这个吧,我看一下啊,我们改什么呀。呃,我们把这个数据里面的,呃,数据里面所有的这个,我记得好像有好多个速度与激情一对吧,你看这两个吧。对吧,我们把你这个电影的名字啊,就电影的名字都为这个速度与激情一的,然后呢,统一做一个更改吧。可以吧,统一做一个更改,比如说改成某一个值OK吧,那你看我们就要去写了哈,怎么写呢?那首先你的query的话呢,这里面你看一下我们的update。
09:05
By query request,这里面你要设置什么东西呢?这里面设置什么东西啊,同学们你找找这里面你可能要设置的就是你的query了啊,你要set query了,为什么呢?因为这个地方它有一个query。那你就要什么给他设置这个query对吧,说什么什么set query来set query好,那这个set query的时候呢,他说你要给我传过来一个quary build,好,那这个query build是干嘛的呢?啊注意你这个query的话呢,你实际上是一个什么query呢?你要去看你里面写的什么操作,你能明白吧,你要看你里面写的什么操作啊,那比如说呢,我们现在希望是一个只等判断,我要判断一下,只要你的电影的名字是等于速度与激情一的,OK,那我就会怎么统一做一个修改,那这里面你会怎么写啊同学们。你会怎么写,你是不是要写一个布尔,写一个,然后写个term。对吧,这里面就写一个什么,你的电音的名字等于谁谁谁。是这样的吧,来这样啊,我们把它写出来啊,写出来再来说啊,更好说一点,那我就直接把这个复制一下啊,我就不跟你写那么多了啊。
10:02
就是给大家去讲一个思路,就是你再去写这个复杂的操作的时候,先把DSL写出来啊好,这里面你看了哈,我就改成了改这个movie test对吧,Movie test,然后呢,呃,我们做一个直转判断啊,那我的这个movie test的话,那我就什么直接写什么呀,是不是直接写我的movie name就可以了呀。对吧,直接写这个movie name就可以了。然后了吧,直接写他,呃,为什么写他就可以了,因为我这个电影的名字我记得好像。你看一下啊,我记得他是没有存那个倒牌的哈,Movie test。嗯,Movie ch,然后呢,下划线这个卖品啊。你看一下啊呃,诶。哎哟,这个还不行啊,这个是,哎哟这个是我我之前做了那个错误的操作,对吧,错误的操作,哎哟这个东西。来吧,不管他吧,这个这个其实也不会影响啊,这个其实也不会影响,我们不管它啊,不管它,我们主要是看这个东西,好吧,Movie name啊它哦,它是一个text对不对,哎哟,那还不行,他是一个text的话,嗯。
11:08
那不行,他有一个倒排对不对。它有一个倒牌,呃,不过还好啊,嗯,我想想啊,这个还不太好操作,因为它是一个倒牌的,那我就没法去指定它这个具体的值啊,嗯。我想想啊,Movie name。Term,我告诉他做直等判断,然后movie name,因为我这个用了我们那个模板,模板里面写的就是一个text啊,不好操作,不好操作的话,嗯。这样吧,我们重新来一个吧,反正这个,反正这个movie太也也也被我改花了,是不是之前啊不用改花了,那我就不要他了吧,我把它这个删了得了啊,删了我们重新来一个啊,呃,或者说我根本就不用它了啊,我换一个吧。我重新换一个啊,那我就这样吧,嗯,我不用它的那个模板啊,因为这样的话我好改啊,要不我不好改,呃,那我把这个先注释掉啊,呃,我把我这个之前的操作呢,我重新来执行一遍,比如说这个1001,就这个速度与激情一吧,然后我们不叫movie test了啊,我就写一个movie,嗯。
12:16
什么比如说movie这个1018吧,好吧,我随便写一个得了哈,来把这个重新执行一下啊呃,Post执行一下,然后呢,这个post的话呢,我也这个。改一下啊,末尾1018啊,重新来一个吧啊,因为那个之前被我改花了哈,呃,这个就多写几个吧啊,多写几个进去。好,然后呢,这个也改一改啊,都改成这个MOVIE1018啊OK。行,这个update的话我就不做更改了啊,那我把这个统一统一都是调一下啊,就是把这个po调一下,这个P调一下,然后呢,这个调一下啊找一下。重新来一下啊。好,那成立以后呢,我们重新查数据啊,我们来查一下这个get数据啊,Get这个MOVIE1018对吧。
13:06
MOVIE1018,他还没有提示出来是吧,Search啊。好走一下啊,来这个数据是有的啊,你看一下我们的1001啊,这是有的,然后呢,我们,呃,这个是做了一个什么POS操作,对吧,它有一个随机的ID,然后下面就是你的长津湖啊,水面桥啊,狙击手啊。对吧?啊,这是没问题的啊,行,那正好我们现在还是有两个这个速度与情是吧,那你看现在我的操作就是我希望把这个速度与激情,然后呢,都改一个名字,那你看这里面怎么写呢?那我就写成这个MOVIE1018对吧?这里面你看我就可以写了啊,因为我们的现在的我的这个1018呀,我就是怎么可以正常去写什么呀,写这个你看它是有这个keyword的,对不对,他有keyword的话,那我在写的时候,我就可以做这个直等判断了。对吧,做只等判断啊,那就什么,只要你等于这个刚刚我们查的那个叫啥来着,速度与激情一是吧。
14:00
好把它复制出来,那么只要你是等于这个值的,OK,那我就什么给你统一改个名字啊,比如说呃,S,那我改谁啊,就改这个movie name。那吧,就把他的这个movie name重新改一个名字,那我就改成,呃,新的名字叫什么呀?嗯,不叫这个速度与激情了,我们叫什么呀。呃。叫个啥好呢?啊。这个还有什么电影啊,嗯,这电影有很多,一下就想不起来了啊。呃,比如说就就红海行动吧啊,我实在想不起来了啊,好吧,随便改一个啊红海行动OK吧,行来看一下啊,我们这样先去执行一下啊走。好,你先保证你写的这个DSL是能够执行的啊,那这个执行完成以后的话,你再去查的话呢,应该就看不到这个输入与激情了啊,你看这里面就没有了吧,是不是都变成这个户外行动了呀。没问题吧,好,那么这就是你写完的一个DSL,那你可以把这个DSL的给他什么完整的拿过来。拿过来以后去转化成你的代码啊,同学们来定到这,定到这以后你就去转换就行了,好那你看一下这个就是要啊,好来写到这这里面啊,我们是需要有一个这个query,那你这个query的话呢,你就要看你这里面是做了什么操作了。
15:14
明白吧,你看啊,所以我们在这个set query的时候,他说诶,我要求是一个什么query build,但是你这个query build吧,你看一下啊,Query build query build啊这个东西,嗯,用的是我看看用的是哪个啊,Query builder它有好几个,它有好几个,呃,那我还得看它啊。直接点它吧,对吧,他用的是这个接口,就他要求这是一个query build类型,但是我们发现这个que build它本身是一个接口,那你如果你是一个接口的话,你是没有办法去创建这个对象的,那也就说白了啊,它其实真正的这个跨build呢,应该是一个具体的东西,所以说这个时候你CTRL加H,你看一下在它下面呢,就会有很多具体的,比如说我们有这个,呃,抽象的抽象下面你看再来看就会有具体的,比如说你的terms qua build,对吧,你的这个什么match pass就是这个短语的对不对,还有什么呀,我给你找几个我们熟悉的啊,呃,Range的是不是范围的呀。
16:08
对吧,那你看了这个东西以后呢,你就能够分析出来了,我这里面其实我用了一个什么,我用了一个terms。能不能看得懂,我是用了一个term的,所以说现在我们应该构建的就是一个term的一个快build,所以说你回到这里面,你就不能够说直接用它了,你应该用的是一个什么东西啊,叫做term啊,Term的一个什么这个快速标志。能理解吧,啊应该knew的是它OK吧,那这个扭出来以后的话,你看一下它里面我们需要去给一个字段的名字,所以你看直接什么去set,呃,或者叫什么叫这个field,哎,你看是不是有一个这个哦field。我看这是一个什么方法啊,这是一个。这个方法不对啊,呃,那我们它里面这个字段的名字我们怎么给啊。To。嗯,我先接受回来看一下啊好,这是我们的这个叫做特快build对吧,然后呢,在它里面我们再来一个,呃,Termm快bou的点,它应该是能设置的啊,为什么没有看到这个设置的方法呢。
17:15
Failed。呃,没有是吧,嗯,那就直接在它里面设置的,应该是没有方法的话,我看看这里面有没有啊,这里面有没有,嗯,对吧,这里面是有的吧,你看是不是有这个file name呀,就是你要告诉我你要改成什么。然后来吧,就你要改哪个字段,然后后面是这个字段的值啊,你可以这么去写的,那应该写出来就是这样子的啊,我们把这个fair name写到这,我们就写的是movie_name的keyword对不对,就你这里面怎么写的,那你这里面就要怎么去写,OK吧,然后呢,后面怎么写呢?后面就是你要改成什么值,那刚才我们是把这个速度与激情一呢都改成这个红海行动了,对吧,就现在我的这个ES中都是红海行动了哈。是不是,所以说这一次要改的就是什么,把这个,呃,把这个值呢,改成一个别的不能叫红管行动了啊,我们叫。
18:02
叫什么呀?呃,叫湄公河行动对吧,OK吧,我就随便改一改,好,那就把它写好了。好吧,这就是我们的一个query,然后你把这个把这个query build的给它什么放进来,能不看明白。看到了吧,同学们啊,这就是带着你去分析啊,我们要怎么去写这个query啊,行,但其实啊,我们是不用这么麻烦的啊,同学们,这个我给你分析明白以后,我就把它注释掉了啊,其实我们可以更简单一点,因为它帮我们提供了这么个东西啊,就所有的这个注意啊,我们将来所有用的这个query build,你都可以到这里面去找啊,Query build que build斯啊,它有一个什么,这算是一个工具类吧,它里面就可以帮你去创建,比如说你要的是一个呃,什么布尔的呀,或者什么要的是一个什么term的呀,都可以把它创建出来。能理解吧,同学们这个都可以创建出来的啊,那我们要的是一个这个term的,对吧,你看这不就有一个什么叫做什么term query吗。能没看明白啊,然后呢,呃,这个啊,我们我们我们其他差一个啊,我们还差一个,我们写一个什么,写一个这个布。
19:08
然后对吧,啊,我这个写原值是吧,我我给写错了,写错了啊,一会再来改一下啊,行,就是我们现在差一个差一个这个什么布尔对吧,布尔里面我们再放一个什么特。对不对,应该这样子的啊,就是把这个大概的意思给你说明白啊,行,下面就是写的就是这个东西的啊,叫这个我们先应该先写一个布尔per对吧?这里面的话呢,呃,就不用传东西了啊,这个接收回来,这个应该就是一个布尔的一个什么快build啊,布尔快号,然后呢,你再把这个布尔的快号build呢,应该是传到它里面的啊,刚刚我们少写一个啊,少写一个这个布尔对不对?好然后呢,在这个布尔里面的话,我们应该就有一个什么terms了,对吧,你看一下啊,布尔build里面我们再去什么set这个,嗯,这里面应该叫什么叫做呃,Filter是吧。对不对,那这个filter里面,就是它这个filter里面,这里面要放的就是这个terms了啊,我们来放一个,你看它里面还是一个qua build吧,对吧,这个时候我们要给的就是一个quary标斯里面我们叫来一个什么呀,叫做quary。
20:05
对吧,然后呢,这里面就要给什么呀,给的就是呃,你的名字和这个值啊,刚刚这个值我也给错了是吧?我们应该给的是改之前的值啊,那我再来写一下吧,Movie name,然后呢,点keyword啊,刚刚给错了啊,那我应该还是给这个红外行动是吧?啊刚刚给错了啊,接收回来,好,这是我们的叫做square build,好,那你再把这个square build呢,放到你这个filter里面啊,应该这样去套。对吧,这样去套,然后呢,再把这个整个的这个波的这个que给它传到我这个query里面,就刚刚我们其实少写一个这个。对吧,啊,少写一个波尔啊,OK,行,就按照你这个正常写的这个话你就少写一个波。对不对啊,这样写就可以了啊OK,行,那我们就把它这个query就搞定了,那query搞定以后呢,下面是update,这个update怎么写啊。听好了啊,Update的话,你看一下它是不是要用一个什么script呀,那我们也写呗,就是在这个什么update query by query request里面,我们就有一个什么script。
21:06
呃,应该叫什么site site这个script。对吧,然后这里面需要传什么东西呢?它需要传一个对象,好,那我就什么直接去new啊,你看能不能new,如果不能new再来说啊,创建一个script对象啊,这个是ES的哈,呃,我看它是哪个类型,你看这个它就有很多种类型啊对吧,有不同包下面的,你要去明确一下你用的是哪一个哈,首先你要什么点过来看啊点过来看,然后呢,这个是一个哪个包下面的呀,这个是ES script这个包下面的,那也也就意味着我们用的时候呢,你要用的是导包的时候,你要导的是第一个对吧?导的这个家伙啊,别倒出包了,好行,把这个script扭出来,OK,那他看到他能扭,能扭的话,我就把它拿过来放在这里面。好,那你这个script里面放什么东西呢?它需要有一个source对吧,那你看这里面应该怎么传哈,这里面就可以传你的什么type,传你的long,传你的什么ID or code,然后传你的什么。
22:01
是吧?对不对,你就什么挨个往里面去传就行了啊,那我们挨个看一下这个tap是什么东西啊,Tap的话呢,它是一个script type,那我就看一下啊script type它是一个枚举,看到了吧,它是个枚举啊,这个里面的话呢,我们就直接选这个inline就行了啊,它这个默认就是使用这个inline。OK吧,我们这里面没有指定过啊,但是其实你也可以指定的啊,也可以指定的啊,应该就是那个叫做,呃,我看一下啊,它是可以指定的啊,有一个呃,诶我看看啊,这个叫什么。我记得它有一个那个参数是可以指定的,我一下想不起来那个叫啥了啊,就它是可以指定的啊,但你看这个代码中它是需要你写的,那说明什么呀?说明我们这里面应该也是可以写的啊,行,这就就直接使用依赖就行了啊,这个我们不再不去关心它啊,重点是后面后面再往后看。这个烂什么呢?烂就是你的语言啊,那你看这面我们写的是个LA对不对,那这里面你也写个pen LA就可以了啊呃,那我记得这个pen LA的话,嗯,你直接这么写也行啊,但是我记得它应该是有一个,嗯,有一个那个常量是可以去调的哈,我找找是不是在在这个script里面有啊。
23:10
呃,Script里面是不是有这个喷呀。呃,我点过来吧,啊,点过来应该有啊,是不是这个东西啊,对吧,叫什么default script line啊,就省得你自己去写哈。对吧,你看这个点过来,它默认不就是一个place吗?就指的是这个语言,OK吧,行,来再往后写啊,这个再往后写的话呢,呃,第三个是我们的ID code这啥东西啊,这个其实就是你的这个了啊,就是你的S了,明白吧,它就是你的S了啊,那么写一下吧,那这个S怎么写啊,它其实提示的也是一个字符串啊来,我这个折个行啊,它提示的也是一个字符串。对吧,那你要怎么写,你就得这么去写了啊,就是你的什么ctx点什么什么下划线S,然后它里面的谁呢?比如说我要把它里面的这个movie name对吧,改成什么呀,那就写吧,比如说我们叫叫什么,比如说new name吧,好那你这个写完以后的话,你看一下你最后最后还得差一个什么,差一个这个什么,就这个东西你还得去写一下。
24:10
对吧,那这个是一个有跳的map,那我就什么创建一个啊,写到上面吧,右上一个哈希map,嗯,这个是有跳的啊,别打错包。好,它里面要求放什么类型来着。我看一下啊,放什么类型,这个类型也得写对了哈,你不写这肯定是不行的,呃,String和Ann RA对吧,那我就放一个string,然后呢,后面是an RA啊any rough写到这,OK,放到这,然后这是我们的PAR啊好,然后这里面你放什么东西啊,这里面就是设置你的值就可以了啊我们叫什么put put的话你看一下啊,我们叫new name,那我写个new name就是它里面这个值,它里面这个key对应什么值呢?那对应就是你要改成什么,比如说那我改成这个叫什么湄公河行动是吧?啊,刚刚写错了啊,这地方应该。这个写的是改之前的啊,我刚才写错了啊,行,那把这个写好以后呢,我们再把这个P给它传到这就可以了。
25:04
看到了吧,诶这就把它什么都构造好了,好,那这个构造好以后呢,你把它什么放到你这个script里面,然后最后呢,整体去做一个执行就可以了。好吧,啊,这就是我们这个,呃,写的这个up by query啊,这里面主要就是告诉大家,你在写的时候呢,你如果说直接贸然上来写这个东西,你谁都不会写,那你就什么先去把你的DSL写出来,写出来以后你就照着你的DSL的去做一个翻译,对吧?做一个翻译就可以了啊,行,我们来试一下吧,看看行不行啊,把这个调一下,Update by query好走一下。呃,诶报错了是吧,看哪报错了啊,五十五行的35这个报错了是吧。五十五行,嗯。啊,放错东西了啊,放错东西了啊,放消息了这个啊。重来一下啊。
26:05
嗯,还不行是吧,看哪错了啊。来看一下哪错了啊,他说这个,呃,Elastic search status exception啊,这里面我没给没有给东西哈,你看一下这里面没给没给谁啊,没有给索引啊,那你就给个索引的啊,索引的话就在它里面给就行了啊,你没告诉我改谁啊,对吧,你那他可以传索引的啊,我们传个索引啊,你没告诉我改谁那不行啊,对吧,得告诉我改谁啊。好了,这就成了啊,来成了以后我们看一下啊呃,刚才我们查的数据都是红网行动啊,那这一次你再查的话呢,应该就变成什么,变成这个湄公克行动了是吧,那上面那个不变啊,主要是看后面的变了吧。对吧,这是可以什么通过这个条件的去做一个什么更改的啊,OK,来,这就是我们的,呃,叫做update by query。
27:02
好了吧。Query,啊行,那我们就呃修改就说这么多了啊。
我来说两句