sql-server – 使用不同排序规则对两个链接数据库进行SQL Server查询

我有2个远程数据库作为查询的一部分

select p.ID,p.ProjectCode_VC,p.Name_VC,v.*
FROM [serverB].Projects.dbo.Projects_T p
LEFT JOIN [serverA].SOCON.dbo.vw_PROJECT v on
p.ProjectCode_VC = v.PROJ_CODE

问题是serverA使用排序规则Latin1_General_BIN而serverB使用Latin1_General_CP1_CP_AS并且查询拒绝运行.

两台服务器都是SQL 2000服务器.两个数据库都是一成不变的,所以不幸的是我无法更改它们的排序规则.

无论如何你们都知道如何让它发挥作用吗?

更新:我找到了另一种解决方案.在“链接服务器属性”中,您可以在那里指定链接服务器的排序规则.

最佳答案
只需将排序规则添加到您的选择中,例如:

select 
  p.ID,
  p.ProjectCode_VC,
  p.Name_VC,
  v.* 
FROM
  [serverB].Projects.dbo.Projects_T p 
  LEFT JOIN [serverA].SOCON.dbo.vw_PROJECT v on p.ProjectCode_VC 
    collate Latin1_General_Bin = v.PROJ_CODE

或者相反.因此,将其中一个排序“转换”为另一个排序.

转载注明原文:sql-server – 使用不同排序规则对两个链接数据库进行SQL Server查询 - 代码日志