Asp.net WHERE CONTAIN查询中的SQL语法错误
我已经有了全文索引/搜索设置,我正在尝试提取“LotteryChoices”列包含任何查询参数的任何行。我不断收到一个“或”附近的语法错误。我已经阅读了一系列类似的线程,但对于WHERE-CONTAINS查询的正确语法,它们似乎有相互矛盾的答案。下面是查询。提前感谢您的帮助,我的SQL Fu很弱Asp.net WHERE CONTAIN查询中的SQL语法错误,asp.net,sql-server,Asp.net,Sql Server,我已经有了全文索引/搜索设置,我正在尝试提取“LotteryChoices”列包含任何查询参数的任何行。我不断收到一个“或”附近的语法错误。我已经阅读了一系列类似的线程,但对于WHERE-CONTAINS查询的正确语法,它们似乎有相互矛盾的答案。下面是查询。提前感谢您的帮助,我的SQL Fu很弱 SELECT * FROM Lotto WHERE CONTAINS (LotteryChoices, 'Markley' OR 'Lindley' OR 'Tagert' OR 'Green' OR
SELECT * FROM Lotto WHERE CONTAINS (LotteryChoices, 'Markley' OR 'Lindley' OR 'Tagert' OR 'Green' OR 'Goodwin' OR 'Wilson' OR 'Greene' OR 'Barnard' OR 'Opa' OR 'Taylor'
用于
用于
使用
LIKE
关键字以及字符串中的百分号
select * from Lotto where (LotteryChoices like '%Markley%') or (LotteryChoiceslike '%Lindley%') and so on
使用
LIKE
而不是CONTAINS
是一种简单的方法。使用LIKE
关键字以及字符串中的百分号
select * from Lotto where (LotteryChoices like '%Markley%') or (LotteryChoiceslike '%Lindley%') and so on
这是一种使用
像而不是包含的简单方法,因为您指的是全文索引,而包含函数在T-SQL/SQL Server中使用。我猜您可能不是使用MySQL,而是使用MS SQL,如果是这样,查询应该是:
SELECT *
FROM Lotto
WHERE CONTAINS (LotteryChoices, 'Markley OR Lindley OR Tagert OR Green OR Goodwin OR Wilson OR Greene OR Barnard OR Opa OR Taylor'
也就是说,将或
作为包含搜索条件的一部分,根据
(如果您确实在使用MySQL,我将删除我的答案)因为您指的是全文索引,并且T-SQL/SQL Server中使用了CONTAINS
函数,我猜您可能不是在使用MySQL,而是在使用MS SQL,如果是这样,查询应该是:
SELECT *
FROM Lotto
WHERE CONTAINS (LotteryChoices, 'Markley OR Lindley OR Tagert OR Green OR Goodwin OR Wilson OR Greene OR Barnard OR Opa OR Taylor'
也就是说,将或
作为包含搜索条件的一部分,根据
(如果你真的在使用MySQL,我将删除我的答案)事实上,LotteryChoices不仅仅是名称吗?事实上,LotteryChoices不仅仅是名称吗?我很惊讶(错误的语法接近)消息走得这么远,我找不到任何关于MySQL包含函数的引用。我很惊讶它(错误的语法接近)消息)到目前为止,我找不到任何mysql具有contains函数的引用。我使用的是MS SQL,很抱歉,我忘了提到这一点,因为它会影响语法。很好,谢谢你,这很有魅力。我使用的是MS SQL,很抱歉我忘了提到这一点,因为它会影响语法。接得好,谢谢你,这很有魅力。