我有两列:
Location1 | Location2
---------------------------
Canada*ab*av USA*nm*mn
Canada*vn*mv Canada*ty*av
我想选择字符串第一部分(第一个'*'之前)不同的所有行。因此在示例中我会得到第一行,因为加拿大和美国不同,但我不会得到第二行,因为加拿大和加拿大是相同的。
我尝试过类似的东西,但看起来这是一个语法错误:
select * from tab
WHERE substring_index(location1, '*', 1) <> substring_index(location2, '*', 1)
答案 0 :(得分:1)
从标签中选择* WHERE substring_index(location1,&#39; &#39;,1)&lt;&gt; substring_index(location1,&#39; &#39;,1)
你不应该比较Location1和Location2吗?我建议保持案例与你的表格相同。 I.E.使用位置而不是位置。