0
私は照合を使用して検索し、答えを使用するのと同じ方法でそれを使用しています。しかし、私はエラーを取得しています。ここSQL Serverの照合構文エラー
Incorrect syntax near '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' 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
私は
AND
UPPER(K.VAL106) COLLATE DATABASE_DEFAULT = UPPER(E.JOBCODE) COLLATE DATABASE_DEFAULT
と(戻りの照合順序の競合を解決できません(同じ構文エラーで)試してみました操作に等しい)
UPPER(K.VAL106) = UPPER(E.JOBCODE)
構文で何が間違っていますか?
おそらく、その比較は照合の競合の原因ではありません。 –
その行が削除され、クエリが実行されます。申し訳ありません - 私はそれを述べたはずです... – dneimeier
'UPPER(K.VAL106)= UPPER(E.JOBCODE)COLLATE DATABASE_DEFAULT'を使用するとどうなりますか? – Lamak