私のクエリは以下です
select * from Test where contains (Description,'NEAR((method,system),3')
SQL Server 2008 でエラーが表示されます。
Syntax error near '(' in the full-text search condition 'NEAR((method,system),3'
それの何が問題なのですか?
私のクエリは以下です
select * from Test where contains (Description,'NEAR((method,system),3')
SQL Server 2008 でエラーが表示されます。
Syntax error near '(' in the full-text search condition 'NEAR((method,system),3'
それの何が問題なのですか?
If you want to use the NEAR operator in such way, you should upgrade to SQL Server 2012. この構文は、2012 バージョンの新機能であるため、以前のバージョンでは使用できません。
MSDN のドキュメントを2008 バージョンと2012 バージョンで比較すると、2008 では構文がサポートされていないことがわかります。
2012 年の構文:
<custom_proximity_term> ::=
NEAR (
{
{ <simple_term> | <prefix_term> } [ ,…n ]
|
( { <simple_term> | <prefix_term> } [ ,…n ] )
[, <maximum_distance> [, <match_order> ] ]
}
)
<maximum_distance> ::= { integer | MAX }
<match_order> ::= { TRUE | FALSE }
2008 年の構文:
<proximity_term> ::=
{ <simple_term> | <prefix_term> }
{ { NEAR | ~ }
{ <simple_term> | <prefix_term> }
} [ ...n ]
クエリが正しくフォーマットされていません。これを使って:
select * from Test where contains (Description,'NEAR((method,system),3)')