我知道在哪里使用
select * from Table1
join table2
on table1.column like %text%
我想将相同的逻辑扩展到列。即
select * from Table1
join table2
on table1.column like %table2.column%
这在SQL上是不可能的?有替代方案吗?
由于
答案 0 :(得分:1)
尝试养成始终指定您正在使用的数据库引擎的习惯,并根据该示例数据包含示例数据和预期输出。在这种情况下,样本数据等可以帮助我们提供更相关的答案。与在join子句中使用like
相比,可能有更好的解决方案。
但是对于你给出的下面的简单例子应该有效。
select * from Table1
join table2
on table1.column like '%' + table2.column + '%'
修改强> 从this resource看来,proc-sql使用双管||对于字符串连接和字符串的双引号,请尝试下面的新版本。
select * from Table1
join table2
on table1.column like "%" || table2.column || "%"
答案 1 :(得分:0)
试试这个
select * from Table1
join table2
on table1.column like '%' + table2.column + '%' COLLATE Latin1_General_CS_AS
其中(COLLATE Latin1_General_CS_AS)
代表Microsoft SQL Server中的区分大小写