2009-09-24 95 views
0

当做一个SQL查询,并且我想从一个名称中有AND的表格中拉出条目,但我不想要名称,只有和他们.. ...SQL查询(喜欢)试图找到与标题的标题和

混乱,但我将展示一个例子

有2项在表:

  • Pandomniam
  • 弗兰克和豆类。

当我做这个查询时,我只想让Frank和Beans出来,而不是Pandomniam。我正在做类似

SELECT NAME FROM TABLE WHERE NAME LIKE '%and%' 

这会得到我的结果,但我没有成功。

我的第一本能是试着看看我能否得到Pandomniam的结果,所以我可以做一个AND NOT LIKE来过滤它们,但我似乎无法得出一个。

回答

2

如何添加两个空格:

SELECT NAME FROM TABLE WHERE NAME LIKE '% and %' 
3
SELECT NAME FROM TABLE WHERE NAME LIKE '% and %' 
4
SELECT NAME FROM TABLE 
WHERE 
NAME LIKE '% and %' OR 
NAME LIKE 'and %' OR 
NAME LIKE '% and' 
+0

这将包括“品牌”和“安第斯” – moo 2009-09-24 23:58:46

+2

@ orlandu63:不,它不会。 – richardtallent 2009-09-25 00:01:53

1

你不是说你用什么牌子的RDBMS。 MySQL的支持正则表达式谓词RLIKE与“字边界”元字符序列:

SELECT NAME FROM TABLE WHERE NAME RLIKE '[[:<:]]and[[:>:]]' 

如果你使用其他品牌比MySQL其他数据库的,或许你可以研究它的正则表达式的功能。