SQL:是%columnName%之类的名称

时间:2015-03-09 04:58:33

标签: sql proc-sql

我知道在哪里使用

select * from Table1
join table2
on table1.column like %text%

我想将相同的逻辑扩展到列。即

select * from Table1
join table2
on table1.column like %table2.column%

这在SQL上是不可能的?有替代方案吗?

由于

2 个答案:

答案 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中的区分大小写