SQL CONTAINS参数

有没有办法让CONTAINS拥有,列名作为两个参数
CONTAINS(cars.brand,COALESCE(@brand,cars.brand))
现在,如果@brand = NULL,则第二个参数将为
cars.brand
,使查询为
CONTAINS(cars.brand,cars.brand)
这将帮助我忽略我将在桌子中寻找特定品牌的情况
WHERE 1=1
无论品牌是什么,都会返回结果。 但是这会因语法错误而失败,因为第二个参数必须是字符串。     
已邀请:
其中一种方法是
((@brand IS NULL) OR CONTAINS(cars.brand, @brand))
为您不想过滤的参数传递NULL。 [注意:如果您有许多参数,您应该了解参数嗅探以及不正确的缓存查询计划的可能性。虽然这可能对自由文本搜索有不同的行为]     

要回复问题请先登录注册