0

我正在尝试在两个表上执行连接。一张表包含员工信息,另一张表包含他们的学位信息。雇员表中 SSN 的数据类型是 varchar 并包含连字符。但是,度表中 SSN 的数据类型是整数,不包含任何连字符。我需要使用 SSN 来链接这两个表。如何使用此设置完成加入?

4

1 回答 1

1

我认为最好的解决方案是将字符串转换为整数:

select <whatever>
from employee e join
     degree d
     on e.ssn = cast(replace(d.ssn, '-', '') as int)

请注意,键上的转换可能意味着不会使用索引。您可能应该将其中一个或另一个的数据类型更改为一致的格式。

于 2012-05-06T04:31:21.723 回答