Mysql SQL需要从两个不同的表中选择拼写不相同或不匹配的行
我试图返回每行中名称不相同或在SQL中不匹配的列。我已经试着找到了一些东西,但我找不到正确的解决方案,因为任何类似的方法都是在寻找与同一个表不匹配的结果 例如,这里是我将要处理的问题 表1.1 表1.1名称 表2.1名称 白细胞介素 尼娜 尼娜 白细胞介素 迈克 迈克 WI 乔恩 乔恩 阿兹 埃里克 埃里克 阿兹 亚历克斯 无效的 德克萨斯州 无效的 汤姆 德克萨斯州 伊恩 伊恩Mysql SQL需要从两个不同的表中选择拼写不相同或不匹配的行,mysql,sql,database,Mysql,Sql,Database,我试图返回每行中名称不相同或在SQL中不匹配的列。我已经试着找到了一些东西,但我找不到正确的解决方案,因为任何类似的方法都是在寻找与同一个表不匹配的结果 例如,这里是我将要处理的问题 表1.1 表1.1名称 表2.1名称 白细胞介素 尼娜 尼娜 白细胞介素 迈克 迈克 WI 乔恩 乔恩 阿兹 埃里克 埃里克 阿兹 亚历克斯 无效的 德克萨斯州 无效的 汤姆 德克萨斯州 伊恩 伊恩 我想你可以试试Soundexxpr之类的东西。你会想在这上面建立索引 它将是这样的: select A.id, A.
我想你可以试试Soundexxpr之类的东西。你会想在这上面建立索引 它将是这样的:
select A.id, A.name as A_name, B.name as B_name
from table1 as A
inner join table2 as B
on A.name SOUNDS LIKE B.name
我想我不明白,为什么你不能用WHERE table1.name table2.name?我试过了,它什么也不返回。我知道这两个表有不同的计数,因为当我计算不同的值并取其差值时,表1中的值比表2中的值更不同。你不连接这两个表吗?如果没有,那么您是否尝试过从表1中选择table1.ID、table1.name,其中table1.name不在从表2中选择table2.name?然后可以在同一查询上进行联合,但反过来可以得到表之间的所有差异。如果你希望它是同一行上的差异,那么你必须按照Aadmaa的回答去做。当你说“行”时,你是指“列”吗?