现在,咱们来个厉害的,先看代码:
Sql语句 = “Select 姓名,数学,语文,外语 from 成绩表 where 数学>=60 and 语文>=60 or 外语>=60”
注意,上面的条件中有一个and,有一个or,大家现在猜想一下,查询出来的记录情况是什么呢?
看看下面的查询结果,理解一下,到底是怎样查询的。

头晕了没有,呵呵,其实,把上面的那名代码改写成下面的这种形式,查询得到的结果是完全一样的。
Sql语句 = “Select 姓名,数学,语文,外语 from 成绩表 where (数学>=60 and 语文>=60) or 外语>=60”
比较一下发现,多了一个括号,这样应该好理解一些,先把前面两个条件and一下,得到一些,然后再和第三个条件or一下,所以上图的第四条记录就出现了,虽然数学不及格,但是由于它满足外语大于60这个条件,所以它也被查询出来了,明白了吧。
再接着来,把那个括号改一下位置,代码如下:
Sql语句 = “Select 姓名,数学,语文,外语 from 成绩表 where 数学>=60 and (语文>=60 or 外语>=60)”
括号把后面两个条件括起来了,这样的话,代码就和上面的有点不一样了,它们查询得到的结果会一样吗?
我猜我猜我猜猜猜!!!
请看下图:

会不会又晕了,呵呵!
发现只剩下三条记录了,第四条消失了,为什么会消失呢?
这里需要解释一下,当多个条件同时出现时,从左到右,依次判断,但是当出现括号时,就要先判断括号里的条件组合,所以第四条记录虽然满足于括号里的条件(语文>=60 or 外语>=60)”,但是和括号外的数学>=60 来一次and,当然就不满足了,所以就被剔掉了,这下明白了吧!
————————————————————
最近太忙,没有时间写教程,没想到今天一写,就太长了一点,按照以前的章节习惯,都可以分成三节了,呵呵,分个页吧!
另外,发现分页对防采集有一定帮助,呵呵,有意思!