Member 12770648 Ответов: 1

Ошибки со следующей программой CTE пожалуйста помогите исправить ошибку


Есть ошибки со следующими CTE в SQL SERVER 2008 любая помощь.



;С GRAD_MOLD КАК
(
ВЫБЕРИТЕ PAYCURRT.ИДНО ,
PAYCURRT.ИМЕНИ, КАК ИМЕНИ ,
PAYCURRT.LNAME В КАЧЕСТВЕ LNAME В ,
(PAYCURRT.FNAME)+' '+(PAYCURRT.LNAME) КАК DESCPTN ,
(PAYCURRT.УРОВЕНЬ 1), А УРОВЕНЬ 1 ,
(PAYCURRT.РАНГ) КАК РАНГ ,
PAYCURRT.АНУВАГСАЛ КАК АНУВАГСАЛ ,
PAYCURRT.МТВАГСАЛ КАК МТВАГСАЛ ,
PAYCURRT.EARNTYP КАК EARNTYP ,
ГРАДБУЛЬД.TRANCODE КАК TRANCODE ,
TRANSAC.CATEGORY КАК КАТЕГОРИЯ ,
TRANSAC.DESCPN КАК DESCPN ,
00000.00+сделок.КАК ЗНАЧЕНИЕ1 ЗНАЧЕНИЕ1 ,
(TRANSAC.FPVALUE) КАК FPVALUE ,
TRANSAC.DMPERCENT КАК DMPERCENT ,
TRANSAC.BASWAGCON КАК BASWAGCON ,
TRANSAC.TAXSTATUS КАК TAXSTATUS ,
(TRANSAC.SSFCAL) КАК SSFCAL ,
"НЕТ" КАК SPEC_TIME ,
00+1 КАК STAT_MTH ,
0000+2001 КАК STAT_YR ,
00+1 КАК END_MTH ,
0000+2001 КАК END_YR
ОТ PAYCURRT
СЛЕВА ПРИСОЕДИНЯЙТЕСЬ К GRADBULD НА PAYCURRT.КЛАСС = GRADBULD.КОД1
ЛЕВОЕ СОЕДИНЕНИЕ ТРАНСАКЦИЯ GRADBULD.TRANCODE = TRANSAC.CODE
Где TRANSAC.CATEGORY <>'уникальный'
)


; С GRAD_RESULT КАК
(
ВЫБЕРИТЕ ИДНО,КЛАСС,УРОВЕНЬ 1,TRANCODE,DESCPN,КАТЕГОРИИ,ЗНАЧЕНИЕ1,FPVALUE,BASWAGCON,
TAXSTATUS,SSFCAL,DMPERCENT,DESCPTN,
SPEC_TIME,STAT_MTH,STAT_YR,END_MTH,END_YR
ОТ GRAD_MOLD
ГДЕ
IDNO + LTRIM(TRANCODE) NOT IN
(ВЫБЕРИТЕ IDNO + LTRIM(TRANCODE) ИЗ XTRANS_COMB, ГДЕ CATEGORY = "UNIQUE")
)


СООБЩЕНИЕ ОБ ОШИБКЕ

Msg 102, Уровень 15, состояние 1, процедура sp_pers_trans, строка 135
Неверный синтаксис рядом с ';'.

ОТ PAYCURRT


Msg 102, Уровень 15, состояние 1, процедура sp_pers_trans, строка 147
Неверный синтаксис рядом с ';'.

ОТ GRAD_MOLD

Что я делаю не так ?






>

Что я уже пробовал:

Есть коды в Sql Server 2008 и имеющие сообщения об ошибках

1 Ответов

Рейтинг:
2

Richard Deeming

Если вы хотите использовать несколько CTE в одном запросе, вы разделяете их запятой. Вам не нужно ставить WITH перед каждым из них.

WITH GRAD_MOLD AS
(
    SELECT ...
),
GRAD_RESULT AS
(
    SELECT ...
)

Вы также пропускаете последнюю часть вашего запроса, которая использует один или несколько CTE.

With обобщенное_табличное_выражение (Transact-SQL) при SQL-сервера Майкрософт документы[^]