使用LIKE或IN解决查询匹配的MySQL

问题描述:

这可能有一个简单的解决方案,虽然由于数据库的构建方式而变得更加困难,但它不是我的。数据库中的列有一个文本值,格式为text1DDtext2DDtext3,其中DD是一个分隔符,它们通过该分隔符而不是在该列中包含0到n个值的单独表。使用LIKE或IN解决查询匹配的MySQL

有被执行的搜索哪里是什么,我要开始用的是:

"text1","text2", "text3", . . . 

所有我想要做的是建立在检查,看看是否有任何“textn”字符串是查询在列字段中,尽管有一个查询也可以检查查看所有搜索字符串文本值是否在列值中。它们存储在列中的顺序可能不同,搜索字符串也可能不同。如果有一个链接表在一个列中只有一个值,那么它不会很难。

我只是IN和LIKE的各种组合,似乎并不奏效。

谢谢。

+0

请建立4-5个可能的条目sqlfiddle – C2486

+0

见协会或[结表(http://stackoverflow.com/a/32620163)为1:1或1:许多。并没有CSV,或在你的情况下,没有DD SV。 – Drew

尝试:

SELECT columnYouWant FROM dbo.table WHERE UPPER(column) LIKE ('%TEXT%');