打印本文 打印本文 关闭窗口 关闭窗口
SQL基础
作者:武汉SEO闵涛  文章来源:敏韬网  点击数50083  更新时间:2007/11/14 12:53:47  文章录入:mintao  责任编辑:mintao
要把一个字符串与另一个字符串的一部分相匹配,你需要使用通配符。你使用通配符和关键字LIKE来实现模式匹配。下面的语句使用通配符和关键字LIKE重写了上面的查询,以返回所有正确站点的名字:

 

SELECT SITE_name FROM site_directory

                 WHERE site_desc LIKE %trading cark%

 

    在这个例子中,所有其描述中包含表达式trading card的站点都被返回。描述为We have the greatest collection of trading cards in the world!的站点也被返回。当然,如果一个站点的描述中包含I am trading cardboard boxes online ,该站点的名字也被返回。

注意本例中百分号的使用。百分号是通配符的例子之一。它代表0个或多个字符。通过把trading card括在百分号中,所有其中嵌有字符串trading card的字符串都被匹配。

现在,假设你的站点目录变得太大而不能在一页中完全显示。你决定把目录分成两部分。在第一页,你想显示所有首字母在AM之间的站点。在第二页,你想显示所有首字母在NZ之间的站点。要得到第一页的站点列表,你可以使用如下的SQL语句:

 

SELECT site_name FROM site_directory WHERE site_name LIKE [A-M]%

 

在这个例子中使用了表达式[A-M],只取出那些首字母在AM之间的站点。中括号([])用来匹配处在指定范围内的单个字符。要得到第二页中显示的站点,应使用这个语句:

 

SELECT site_name FROM  site_directory

                 WHERE site_name LIKE [N-Z]%

 

在这个例子中,括号中的表达式代表任何处在NZ之间的单个字符。

假设你的站点目录变得更大了,你现在需要把目录分成更多页。如果你想显示那些以ABC开头的站点,你可以用下面的查询来实现:

 

SELECT site_name FROM site_directory WHERE site_name LIKE  [ABC]%

 

在这个例子中,括号中的表达式不再指定一个范围,而是给出了一些字符。任何一个其名字以这些字符中的任一个开头的站点都将被返回。

通过在括号内的表达式中同时包含一个范围和一些指定的字符,你可以把这两种方法结合起来。例如,用下面的这个查询,你可以

 << 上一页  [41] [42] [43] [44] [45] [46] [47] [48] [49] [50]  ...  下一页 >> 

打印本文 打印本文 关闭窗口 关闭窗口