Объединение на разных типах данных - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь выполнить внутреннее соединение для CardID, которое присутствует в 2 таблицах:
PCARDS_ILL_DBO_CARD и tExceptionsAll2.

В PCARDS_ILL_DBO_CARD это «Число», а в tExceptionsAll2 это «Короткий текст».
Я посмотрел ответы на похожие вопросы, размещенные в Stackoverflow, и реализовал их, но я »Я все еще получаю ошибку.

Я не могу изменить форматирование в PCARDS_ILL_DBO_CARD;несколько других запросов в разных базах данных полагаются на tExceptionsAll2 с текущим форматированием и имеющимися у него типами данных.

Вот что у меня есть:

SELECT  tExceptionsAll2.ID
        , tExceptionsAll2.CardholderName
        , PCARDS_ILL_DBO_CARD.PERSON_ID
        , tExceptionsAll2.CardType
        , tExceptionsAll2.Duration
        , tExceptionsAll2.ExceptionType
        , tExceptionsAll2.STL AS [Exp STL]
        , tExceptionsAll2.CL AS [Exp CL]
        , PCARDS_ILL_DBO_CARD.TRANS_LIMIT_AMT AS [Card STL]
        , PCARDS_ILL_DBO_CARD.MONTH_LIMIT_AMT AS [Card CL]
        , tExceptionsAll2.TerminationDate
FROM    PCARDS_ILL_DBO_CARD INNER JOIN tExceptionsAll2 ON (PCARDS_ILL_DBO_CARD.CARD_ID = CAST (tExceptionsAll2.CardID AS INT)) AND 
                                                          (PCARDS_ILL_DBO_CARD.PERSON_ID = tExceptionsAll2.CardholderUIN)
WHERE   (((tExceptionsAll2.STL)>0) AND 
         ((tExceptionsAll2.CL)>0) AND 
         ((PCARDS_ILL_DBO_CARD.TRANS_LIMIT_AMT)<>[tExceptionsAll2].[STL]) AND 
         ((PCARDS_ILL_DBO_CARD.MONTH_LIMIT_AMT)<>[tExceptionsAll2].[CL]) AND 
         ((tExceptionsAll2.TerminationDate) Is Null));

Вот ошибка:

enter image description here

...