SQL Server整理语法错误
我已经用collate搜索过了,并且正在用答案所说的同样的方法使用它;然而,我得到了一个错误 “COLLATE”附近的语法不正确 我的问题是:SQL Server整理语法错误,sql,sql-server,syntax,collate,Sql,Sql Server,Syntax,Collate,我已经用collate搜索过了,并且正在用答案所说的同样的方法使用它;然而,我得到了一个错误 “COLLATE”附近的语法不正确 我的问题是: SELECT P.FIRST_NAME_SRCH, P.LAST_NAME_SRCH, ' ' as Title, CASE E.FULL_PART_TIME WHEN 'F' THEN 'Full Time' WHEN 'P' THEN 'Part Time' WHEN 'O'
SELECT
P.FIRST_NAME_SRCH,
P.LAST_NAME_SRCH,
' ' as Title,
CASE E.FULL_PART_TIME
WHEN 'F' THEN 'Full Time'
WHEN 'P' THEN 'Part Time'
WHEN 'O' THEN 'Occasional'
ELSE E.FULL_PART_TIME
END AS FULL_PART_TIME,
' ' as Capacity,
REPLACE(E.HOME_PHONE,'/','-') as HOMEPHONE,
' ' as MobilePh,
' ' as Email,
CONVERT(char(10),E.BIRTHDATE,101) as 'BIRTHDATE',
CASE
WHEN E.HIRE_DT > E.REHIRE_DT THEN CONVERT(char(10),E.HIRE_DT,101)
WHEN E.REHIRE_DT > E.HIRE_DT THEN CONVERT(char(10),E.REHIRE_DT,101)
ELSE CONVERT(char(10),E.HIRE_DT,101)
END as 'HIRE_DT',
' ' as CommPref,
RTRIM(K.LEVEL3) as 'JOBCODE',
E.EMPLID
FROM
HRPROD..PS_EMPLOYEES E, HRPROD..PS_PERSONAL_DATA P, TKCSDB..CTRLEVEL3CFG K
WHERE
E.COMPANY = 'WSQ'
AND E.EMPLID = P.EMPLID
AND K.VAL106 COLLATE DATABASE_DEFAULT = E.JOBCODE COLLATE DATABASE_DEFAULT
ORDER BY
P.LAST_NAME_SRCH
我尝试过(有相同的语法错误)
和(返回无法解决等于操作的排序规则冲突。)
我在语法上做错了什么?这一定是版本问题。通过SQL SERVER 2012 Mgt Studio查询工具执行将返回预期结果,不会出现错误。可能该比较不是排序规则冲突的来源。我删除了该行,然后执行查询。抱歉-我应该提到…如果您使用:
UPPER(K.VAL106)=UPPER(E.JOBCODE)COLLATE DATABASE\u DEFAULT
?相同的错误:“COLLATE”附近的语法不正确。我还尝试删除UPPER语句。同样的结果
AND
UPPER(K.VAL106) COLLATE DATABASE_DEFAULT = UPPER(E.JOBCODE) COLLATE DATABASE_DEFAULT
UPPER(K.VAL106) = UPPER(E.JOBCODE)