我正在尝试进行以下选择:
select * from urlpath where substring(urlpathpath, 3, len(urlpathpath))
not in (select accessuserpassword from accessuser where accessuserparentid = 257)
我收到错误:
Cannot resolve the collation conflict between
"SQL_Latin1_General_CP1_CI_AI" and
"SQL_Latin1_General_CP1_CI_AS" in the equal to operation.
有没有人知道我如何作为整理,或允许我匹配这种情况的东西?
感谢名单
答案 0 :(得分:10)
您可以在要“重新整理”的列的列名称后面添加COLLATE CollationName
。 (注意:校对名称是文字的,没有引用)
答案 1 :(得分:0)
您甚至可以对查询进行整理以使用该查询创建新表,例如:
SELECT
*
INTO
#TempTable
FROM
View_total
WHERE
YEAR(ValidFrom) <= 2007
AND YEAR(ValidTo)>= 2007
AND Id_Product = '001'
AND ProductLine COLLATE DATABASE_DEFAULT IN (SELECT Product FROM #TempAUX)
COLLATE DATABASE_DEFAULT导致COLLATE子句继承当前数据库的排序规则,消除了两者之间的差异