在类似sql条件下对一个属性进行多次绑定,试图将其干掉

时间:2011-01-03 20:37:02

标签: sql binding find conditional-statements sql-like

不是这个:

"height like '%1%' or height like '%2%' or height like '%5%'"

假设这个属性有很多绑定。

它们不是有序的,它们是随机的。

如何简化这个sql?

像这样:

"height like ('%2%' or '%1%' or '%5%')

代码只是一个例子。

我不是在寻找注射建议。

2 个答案:

答案 0 :(得分:1)

LIKE没有等效的IN。你的第一种方法是正确的方法。

WHERE (height LIKE '%foo%' OR height LIKE '%bar%' OR height LIKE '%baz%')

请注意,这会很慢。您可能希望查看全文搜索。

答案 1 :(得分:0)

好吧,我认为SQL in选项可以解决你的问题。

身高('%2%','%1%','%5%')

这假设您的变量将始终具有值,因此请确保您的默认值是数据库中的有效值!