结合like子句' - 一个特殊的通配符和一列

时间:2015-04-22 07:36:39

标签: mysql sql sqlite

我正在尝试执行一个select语句来查询包含@" username"的所有数据的我的注释列。在数据库表中。例如,如果我想找到@bobby。查询将搜索通配符@并检查用户名列中的每个元素。例如用户名栏是

**USERNAME** 
bobby
foo
patrick

这是我到目前为止所知道的(我知道它错了,但你知道我想要实现的目标)

 "SELECT * FROM posts WHERE content LIKE '%@%' AND content LIKE "entire usename column""

2 个答案:

答案 0 :(得分:1)

如果我理解正确的话。有人搜索something,您想检查%@%的每个内容列以及%something%的每个用户名

SELECT * FROM posts 
WHERE content LIKE '%@%' AND username LIKE '%something%'

但说实话,这没有多大意义。相反,你可能想做类似的事情:

SELECT * FROM posts 
WHERE content LIKE '%@something%'

这将返回 content 包含@something的每一行。

根据评论

这将遍历每个用户名(在表用户中)并检查它是否包含在内容中(在表格帖子中),以及返回有匹配的行。这假定您将用户名存储在单独的表中:

SELECT * FROM posts
CROSS JOIN users
WHERE content LIKE '%@' + username + '%'

答案 1 :(得分:0)

re using multiple sql喜欢`陈述错误:应该是

column1 LIKE '% aaaa %' AND column2 LIKE '% bbbb %'

同样的问题here