2013-03-15 101 views
0

我正在和CONTAINS一起工作,但它并不是在MySQL中工作。CONTAINS不能在mysql中工作

mysql> SELECT * FROM MUTHU; 
+---------------------+ 
| MY     | 
+---------------------+ 
| how is your studies | 
| how are you there | 
| hi there   | 
+---------------------+ 
3 rows in set (0.00 sec) 
mysql> SELECT * FROM MUTHU CONTAINS (MY, "how"); 
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that 
corresponds to your MySQL server version for the right syntax to use near '(MY, 
"how")' at line 1 
+0

是'CONTAINS'甚至是一个真正的MySQL函数,在他们的文档中我找不到它。 :S – Seer 2013-03-15 15:30:16

回答

0

你错过了Where条件,

试试这个:

SELECT * FROM MUTHU 
Where MY CONTAINS (MY,"how"); 
+0

添加无法使用的地方。但INSTR的作品。 – 2013-03-15 17:45:26

+0

但是我想查询select * from MUTHU 其中INSTR(MY,'how'或'hello');有什么办法吗? – 2013-03-15 17:46:27

1

我不认为MySQL有一个叫CONTAINS功能,请尝试以下查询:

SELECT * FROM MUTHU 
WHERE MY LIKE '%how%'; 
+0

http://stackoverflow.com/questions/3213998/performance-of-like-query-vs-full-text-search-contains-query – jcho360 2013-03-15 15:43:18

+1

Mysql有关键字CONTAINS。请编辑你的答案。 – AbhimanyuAryan 2015-03-10 00:53:13

+1

@AbhimanyuAryan请你告诉我'CONTAINS'关键词的文档在哪里? – 2016-12-23 16:20:44

0

我相信包含主要用在Xpath/Xquery中。在mysql中类似的功能是INSTR()。正确的代码是这样使用的:

select * from MUTHU 
    where INSTR(MY, 'how') > 0; 
+0

@EAGER_STUDENT在回答您的问题时,答案是您必须两次致电INSTR。如下所示:INSTR(MY,'how')> 0)或(INSTR(MY,'hello')> 0); – hillmandj 2013-03-15 18:20:55