00:00
好,接下来我们来下一个话题啊。叫做片段。这个SQ片段呢,我们现在来一个最最简单的。需求啊,根据ID查单条行吧,最简单的需求啊,咱们来一个student student dl,咱们来一个该多少了。19啊,我们传一个IDA001,好把咱们这个S给它输出出来。好星,那这东西咱们应该非常熟了吧,同学们。
01:01
Student Su dt where。ID等于ID,这个没问题吧,好。来一下啊。好,这个肯定是没问题的,对不对,但是呢,大家现在观察一下啊,我现在这个select形符表有没有观察到,我在每张表上是不是都有啊。啊,每次写好烦呐,我真心烦,有没有这个,如果我这个东西能用某一种符号代替就好了,市长。OK吧,好,所以说啊,就出现了SQ片段这种机制,OK吧,我先来啊。Circle标签看到没?好,咱们直接起一个这个ID就行了啊。使用SQ标签制作circleq片段,OK吧,Circle片段的作用是用来代替什么呢?代替啊,这个circle语句中的什么呢?SQ语句中的这个代码OK吧,好,如果你的SQ语句中。
02:28
啊啊,你这么说吧,如果你的这个map映射文件中的SQL语句啊,好某些代码啊,出现了大量的这个啊重复啊重复好我们可以使用什么呢?Circle。片段来代替他们。
03:00
代替他们OK吧,好,那其中咱们这个ID啊。就是我们SQ片段的。唯一。标识好,将来找到这个SQ片段。使用什么呢?ID来进行定位,OK吧,好,那这个ID我随便起个名字啊,就叫。就四扣一吧,行吧,好,我们来一个select from表student OK吧,好,以后呢,我这一句话引这个思who片段就行了,来看看怎么引啊,非常的简单,那这一句我说不就不用写了。Q,片段好,叫做include标签啊,Include标签好,那么这个refid表示什么呢?我要引一个circleq片段的IDOK吧,好引谁同学们?
04:07
Q1,是这样吗?所以说这一句代表的就是谁呢?C select形表看到没?好,也就是说啊,这一句include啊,包含这个CIRCLEQ1诶一下通过它找到这个soq片段,它会把这个标签对里边的内容在语句执行的时候动态的给你拼接到这个位置,来代替这个in include标签,OK吧,好,我们现在来试一试啊。嗯。看看咱们这个售后语句是不是还是他呀,好使,但是有同学们看没看到啊。我这个SQ片段用是用了,但是也没有省多少代码,哎,你看这个长度跟上面这个长度。貌似差不多是这样吗?我要把这俩空格去掉呢。
05:00
那一边长是这样吗?那没有谁高谁低是这样吗?好,那么咱们这个circleq片段啊,那将来都是用来代替什么呢?大家注意啊,都是用来代替我们复杂的这个子查询的,OK吧,我只是拿这个select形from表来给你举个例子而已,什么叫复杂的子查询呢?同学们。啊。你们那个第第几阶段那个考试,那那SQ多复杂呀,是吧,好将来的实际项目开发中啊,使用SQ片段啊,用来。代替啊这个啊重复率。高且。复杂的这个子查询。也就是说你现在来一个这个circle啊,对于我们现在来讲没什么啊,因为比较简单嘛,对不对,比如说你来一个select形容符表对不对,好where你的这个条件这个name啊,比如说这个name等于好这里边来这叫啥是不是子查询呢?C查叉查叉,然后叉叉叉叉,然后它里边再套一个。
06:17
紫查学术也有可能啊,是这样吗?等等等等等等等。他的这个重复率比较高。OK吧,你每一次写,你想一想啊,是不是都得写这么一大串内容啊,所以说我们是不是可以把这整个这一大串给它干嘛呢?给他以SQ片段的形式来保存,以后咱们是不是直接引这个SQ片段比较简单。OK吧,好啊,这个就是咱们这个SQ片段的这个作用啊,但是啊,这个什么事情都是有两面性的嘛,对不对,好,但是大家注意了啊。咱们对于这个SQ片段啊,老师有几点需要说明啊,好首先呢,好,那么在这个啊,同一个。
07:08
Map下。在同一个map下啊,大量的出现啊重复的什么呢?这个啊子查询。的,这个几率不高。能理解吧?这个几率不高,OK吧,所以啊,我们一般情况下啊情况下没有使用这个。片段的必要,OK吧,好,另外在这个实际项目开发中啊,你不要把这个circle片段当做成是一种啊,很有意思或者很高级的一个特性,它不是什么好东西,OK吧,如果你大量的使用这个SQ片段啊,会这个大大的降低什么呢?
08:04
哎,咱们SQ语句的可读性OK吧?啊,我看有些同学玩这个SQ片段啊,我看其他代码敲的一般啊,这circleq片段玩的可溜了,后边这个where什么ID等于什么也用的SQ片段,哎,用一条circleq语句全是circleq片段,你根本就看不出来什么呢,这个搜Q鱼到底是什么,你得在那个脑海里边脑补啊,这个include是这条circleq啊,这个include是这条circleq啊,你得脑补OK吧,我们以后肯定不能大量的使用OK吧,好,最后再。很多企业中啊。好,干脆什么呢?哎,就不人就不用了,对不对?哎,摒弃使用这个啊circle片段的机制,OK吧,你在咱们这个circle啊,你该怎么写就怎么写,该重复就重复,但是我重复也有一个好处,我在读某一个需求所用到的circleql语句的时候,我直接一打眼一看,我就知道这个SQ语句的这个全貌是这样吗?我就能够知道这个circle语句它是干什么用的啊,OK吗?好,所以说啊,咱们这个circleq片段啊,这个如果啊,你以后要用,你不能大量的去用,如果咱们不用的话,咱就不用了,企业里边一般情况下都不用它,OK吧,但是这个毕竟是咱们买白提是一种非常棒的一种机制,OK吧,其实这个买白提斯做这项技术的这个初衷是好的,OK吧,啊,那毕竟是有效的提升咱们用户的这个开发的这个体验和需求啊,避免了这个重复率,提高了开发效率,是这样吗?好,所以说啊,这也其中也是咱们。
09:47
嗯,这个啊MYT啊,很重要的一项啊,虽然不用它对吧,好。
我来说两句