在mysql中检查两列中的子字符串

在mysql中检查两列中的子字符串,mysql,Mysql,我已经连接了两个表,需要检查应该出现在一列而不是另一列中的子字符串。我可以使用LIKE运算符在一列中查找子字符串,但是notlike运算符不适用于另一列 基本上,这些列一个包含英文文本,另一个包含翻译文本。我正在寻找翻译英文字母的行。例:一个人从A点移动到B点。这里除了字母A和B外,所有的单词都应该翻译 这是一个问题 select a.*,b.* from ot_document_sentence as a inner join ot_document_sentence_lang as b on

我已经连接了两个表,需要检查应该出现在一列而不是另一列中的子字符串。我可以使用LIKE运算符在一列中查找子字符串,但是notlike运算符不适用于另一列

基本上,这些列一个包含英文文本,另一个包含翻译文本。我正在寻找翻译英文字母的行。例:一个人从A点移动到B点。这里除了字母A和B外,所有的单词都应该翻译

这是一个问题

select a.*,b.*
from ot_document_sentence as a
inner join ot_document_sentence_lang as b on b.document_id = a.document_id 
where 
a.sentence_text LIKE '% B %' or '% C %' or '% D %' or .....
and 
b.translated_text NOT LIKE '% B %' or '% C %' or '% D %' or '% E %' or .....
查询输出包含单个字母的句子,但不过滤没有英文字母的翻译文本


非常感谢您的帮助。

您可能想查看IN子句。

查询在哪里?欢迎使用SO。我以与问题相同的神秘形式提供了答案。有关不那么神秘的响应,请参见:但是操作员NOT LIKE不为另一个工作。这是不可能的。它可以像你写的那样工作,可能与你想要的不同……我已经按照建议添加了问题描述和查询。