【发布时间】:2013-03-25 15:38:25
【问题描述】:
我对使用 ms SQL 服务器相当陌生,想知道是否有办法将整数列值转换为字符串以用于全文包含查询。
例子:
Select
*,
(select count(t2.id) from table2 t2 where contains(t2.text, t.someinteger)) as number
from table1 t`
由于t.someinteger 不是字符串,所以查询失败。
我尝试将整数转换为varchar,但它在语法上不正确。有人知道如何实现吗?
非常感谢任何帮助。
【问题讨论】:
-
如果你给出你得到的确切错误会有所帮助,但无论如何语法都是错误的:
CONTAINS的搜索词是单个值,而不是列中的多个值。因此,您可以为搜索词声明变量或使用常量,但不支持您的语法。 -
我会小心,根据您的代码,您可能会成为 SQL 注入的受害者
-
您是否尝试将整数作为子字符串进行匹配(“123”匹配“0123”和“12345”)?
标签: sql sql-server sql-server-2005 full-text-search