Ошибка DB2 на TSQL - PullRequest
       30

Ошибка DB2 на TSQL

0 голосов
/ 12 июля 2010

Я получаю эту ошибку: [Поставщик OLE / DB возвратил сообщение: [IBM] [Драйвер CLI] [DB2 / linuxx8664] SQL0206N «LS_SCHEDULED_DATE» недопустимо в контексте, где оно используется.SQLSTATE = 42703) Трассировка ошибок OLE DB [поставщик OLE / DB «MSDASQL» IColumnsInfo: возвращено значение GetColumnsInfo 0x80004005: Msg7339, уровень 1, состояние 1, строка 83 Поставщик OLE DB «MSDASQL» сообщил об ошибке.


Код, который я получаю, это ошибка:

IF OBJECT_ID('tempdb..#Temp1') is not null begin drop table #Temp1

select * 

into #Temp1
from openquery(LnkServer,

'
Select 
X.loan_number, 
X.ls_code,
x.ls_actual_completion_date
x.ls_scheduled_completion_date

,max(Case WHEN (ls_code = ''924'' and ls_scheduled_completion_date <> (''01/01/1900'')
             then ls_scheduled_completion_code
               else NULL End) as Ls_scheduled_completion_date

,max(Case WHEN (ls_code = ''926'' and ls_scheduled_completion_date <> (''01/01/1900'')
             then ls_scheduled_completion_code
               else NULL End) as Ls_scheduled_completion_date

,max(Case WHEN (ls_code = ''927'' and ls_scheduled_completion_date <> (''01/01/1900'')
             then ls_scheduled_completion_code
               else NULL End) as Ls_scheduled_completion_date

,max(Case WHEN (ls_code = ''928'' and ls_scheduled_completion_date <> (''01/01/1900'')
             then ls_scheduled_completion_code
               else NULL End) as Ls_scheduled_completion_date

from master x
     inner join(select loan_number, MAX(ls_scheduled_completion_date) as COMPL_DATE
                MAX(ls_actual_completion_date) as APPROVAL_DATE

     Where LS_code in (''924'', ''926'', ''927'', ''928'', ''D08'', ''H38'', ''H79'', ''H42'',
                       ''M40'', ''M29'', ''M10'', ''M40'', ''P31'', ''P49'', ''S17'')

      Group by loan_number order by loan_number) y
      on x.loan_number = y.loan_number
         and x.ls_scheduled_date = y.Compl_date
         and x.ls_actual_completion_date = y.approval_date
      Group by x.loan_number, x.ls_actual_completion_date, ls_scheduled_date

for fetch only with ur')

1 Ответ

0 голосов
/ 12 июля 2010

Разве вы не имеете в виду LS_SCHEDULED_COMPLETION_DATE?

Кажется, что в запросе нет LS_SCHEDULED_DATE, кроме как в пунктах on и group by, где я предполагаю, что произошла ошибка.

С собственного сайта IBM publib :

Для оператора SELECT или DELETE указанный столбец не является столбцом ни одной из таблиц или представлений, указанных в предложении FROM в операторе.

Убедитесь, что имена правильно указаны в операторе SQL. Для оператора SELECT убедитесь, что все необходимые таблицы названы в предложении FROM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...