有的时候取出全部数据库记录也许正好满足你的要求,不过,在大多数情况下我们通常只需得到部分记录。这样一来该如何设计查询呢?当然会更费点脑筋了,何况本文也存心不想让你去用那个什么劳什子的recordset。
举个例子,假如你只打算取出p_name 记录,而且这些记录的名字必须以字母w打头,那么你就要用到下面的where 子句了:
sql ="select p_name from products where p_name like w%"
where 关键词的后面跟着用来过滤数据的条件,有了这些条件的帮助,只有满足一定标准的数据才会被查询出来。在以上的例子里,查询的结果只会得到名字以w 打头的p_name 记录。
以上例子中,百分比符号(%)的含义是指示查询返回所有w 字母打头而且后面是任何数据甚至没有数据的记录条目。所以,在执行以上查询的时候, west 和 willow 就会从products 表内被选取出来并存放在查询里。
就像你看到的那样,只要仔细地设计select 语句,你就可以限制recordset 中返回的信息量,多琢磨琢磨总能满足你的要求。
这些啊还不过是掌握sql用途刚起步。为了帮助你逐步掌握复杂的select 语句用法,下面就让我们再来看一下关键的标准术语:比较运算符,这些玩意都是你在构筑自己的select 字符串来获得特定数据时要经常用到的。
where子句基础
在开始创建where 子句的时候,最简单的方式是采用标准的比较符号,它们是 < 、 <= 、 > 、 >= 、<> 和 =。显然,你很快就能明白以下代码的含义和具体运行结果:select * from products where p_price >= 199.95
select * from products where p_price <> 19.95
select * from products where p_version = 4
注意: 这里你会注意到,最后一个例句中的数字4周围加了单引号。原因是这样的,在这个例子中的 4 是文本类型而非数字类型。因为你会把 select 语句放到引号中来把它作为一个值赋给变量,所以你也可以在语句中采用引号。
比较运算符
比较运算符指定从表内取出数据的内容范围。你可以用它们来创建过滤器以便缩小recordset的范围,促使其只保存给定任务下你关心的信息。