D.R*_*oca 16 sql-server join collate
我试图加入两个表,但我收到此错误:
消息468,级别16,状态9,行8无法解决等于操作中"SQL_Latin1_General_CP1_CI_AS"和"Latin1_General_CI_AS"之间的排序规则冲突.
这是我使用的代码:
SELECT *
FROM [FAEB].[dbo].[ExportaComisiones] AS f
JOIN [zCredifiel].[dbo].[optPerson] AS p
ON (p.vTreasuryId = f.RFC) COLLATE Latin1_General_CI_AS
Run Code Online (Sandbox Code Playgroud)
我知道这是错的,它强调了COLLATE.我不知道如何应用它.
Ale*_*hev 34
正确的语法如下所示.请参阅MSDN.
SELECT *
FROM [FAEB].[dbo].[ExportaComisiones] AS f
JOIN [zCredifiel].[dbo].[optPerson] AS p
ON p.vTreasuryId COLLATE Latin1_General_CI_AS = f.RFC COLLATE Latin1_General_CI_AS
Run Code Online (Sandbox Code Playgroud)
通常,您可以使用Database_Default排序规则,因此您无需弄清楚要使用哪个排序规则。但是,我强烈建议阅读Simons Liew的出色文章,了解SQL Server中的COLLATE DATABASE_DEFAULT子句
SELECT *
FROM [FAEB].[dbo].[ExportaComisiones] AS f
JOIN [zCredifiel].[dbo].[optPerson] AS p
ON (p.vTreasuryId = f.RFC) COLLATE Database_Default
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
89069 次 |
| 最近记录: |