sql包含某个字符串的问题!求高手解答
where [列名] like ‘%+内容+%'这个句子一般查询的是内容包含在列名里的;但我现在要实现的功能是我给出一句话,如果这一列中 的字段包含在我给出的话中的话就把这一列数出来,该怎么实现?
比如:
列名 keyword
尼玛
你爸
大四
然后我给出“尼玛你爸”,要求select出尼玛和你爸这两列!
求各位大神不吝赐教,谢谢
------解决方案--------------------select *
from 表
where '尼玛你爸' like '%'+keyword+'%'
------解决方案--------------------SQL CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。CHARINDEX函数调用方法如下:
CHARINDEX ( expression1 , expression2 [ , start_location ] )
Expression1是要到expression2中寻找的字符中,start_location是CHARINDEX函数开始在expression2中找expression1的位置。
——————————————
like用起来简单,但数据量较大时效率低