MYSQL:WHERE NOT LIKE'%(SELECT column_name FROM table_name)%'

时间:2014-04-06 07:53:00

标签: mysql phpmyadmin

我尝试从另一个table_name中找到%column_name%,我看到了结果 但他似乎忽略了%%

为什么它对我不起作用?

SELECT column_name FROM table_name WHERE NOT LIKE '%(SELECT column_name FROM table_name)%'

感谢, 如果我不按照规则行事,请道歉,这是我的第一个问题。

2 个答案:

答案 0 :(得分:2)

试试这个:

SELECT column_name FROM table_name WHERE NOT LIKE (SELECT CONCAT('%', column_name, '%') FROM table_name)

您不能只在字符串中包含查询,因此请将查询中的列名旁边的通配符放回到NOT LIKE中。

答案 1 :(得分:0)

SELECT column_name
FROM table_name T
WHERE NOT EXISTS ( SELECT column_name from other_table O
                   WHERE O.column_name LIKE CONCAT('%',T.column_name,'%')
                 )