Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Проблема с подзапросом (число прочтений - 1267 )
Korvin
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 9
Зарегистрирован: 26. Ноября 2008
Проблема с подзапросом
26. Ноября 2008 :: 12:36
Печать  
Доброго всем времени суток!

Прошу сильно не пинать, если задаю глупый вопрос: прямые запросы только осваиваю.

Итак, есть запрос:
SELECT
Выборка.Родитель4 as [Родитель4 $Справочник.Контрагенты],
Выборка.Родитель3 as [Родитель3 $Справочник.Контрагенты],
Выборка.Родитель2 as [Родитель2 $Справочник.Контрагенты],
Выборка.Родитель1 as [Родитель1 $Справочник.Контрагенты],
Выборка.Товар as [Товар $Справочник.ТМЦ],
     Выборка.РасходСум as РасходСум,
     Выборка.РасходКво as РасходКво
FROM
(SELECT
CASE WHEN СпрР4.DESCR IS NOT NULL THEN СпрР4.ID
ELSE CASE WHEN СпрР3.DESCR IS NOT NULL THEN СпрР3.ID
ELSE CASE WHEN СпрР2.DESCR IS NOT NULL THEN СпрР2.ID
ELSE СпрР1.ID END END END As [Родитель4 $Справочник.ТМЦ],
CASE WHEN (СпрР3.DESCR IS NOT NULL) AND (СпрР4.DESCR IS NOT NULL) THEN СпрР3.ID
ELSE CASE WHEN (СпрР2.DESCR IS NOT NULL) AND (СпрР3.DESCR IS NOT NULL) THEN СпрР2.ID
ELSE СпрР1.ID END END As [Родитель3 $Справочник.ТМЦ],
CASE WHEN (СпрР2.DESCR IS NOT NULL) AND (СпрР4.DESCR IS NOT NULL)
AND (СпрР3.DESCR IS NOT NULL) THEN СпрР2.ID
ELSE СпрР1.ID END As [Родитель2 $Справочник.ТМЦ],
CASE WHEN (СпрР2.DESCR IS NOT NULL) AND (СпрР4.DESCR IS NOT NULL)
AND (СпрР3.DESCR IS NOT NULL) THEN СпрР1.ID
ELSE NULL END As [Родитель1 $Справочник.ТМЦ],
Рег.Товар as [Товар $Справочник.ТМЦ],
     Рег.РасходСумОборот as РасходСум,
     Рег.РасходКвоОборот as РасходКво
FROM
$РегистрОбороты.Обороты(:НачДата, :КонДата~,,,Фирма = :ВыбФирма AND Товар IN (SELECT Val FROM #спТоваров),
                                   (Товар),(РасходСум,РасходКво)) as Рег

LEFT JOIN $Справочник.ТМЦ as СпрР ON СпрР.ID = Рег.Товар
LEFT JOIN $Справочник.ТМЦ as СпрР1 ON СпрР.ParentID = СпрР1.ID
LEFT JOIN $Справочник.ТМЦ as СпрР2 ON СпрР1.ParentID = СпрР2.ID
LEFT JOIN $Справочник.ТМЦ as СпрР3 ON СпрР2.ParentID = СпрР3.ID
LEFT JOIN $Справочник.ТМЦ as СпрР4 ON СпрР3.ParentID = СпрР4.ID ) as Выборка

При выполнении получаю:Invalid column name 'Родитель4'

Или подайте умную идею:
мне надо сгруппировать итоги по группам справочника и хотел это сделать через подзапрос.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Проблема с подзапросом
Ответ #1 - 26. Ноября 2008 :: 12:39
Печать  
в подзапросе убери типизацию
  

1&&2&&3
Наверх
 
IP записан
 
Korvin
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 9
Зарегистрирован: 26. Ноября 2008
Re: Проблема с подзапросом
Ответ #2 - 26. Ноября 2008 :: 12:49
Печать  
Спасибо.
Убрал. Теперь Line 2: Incorrect syntax near 'sc289'
Это при типизации Выборка.Родитель4 as Родитель4 $Справочник.ТМЦ], , как я пониманию
  
Наверх
 
IP записан
 
Korvin
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 9
Зарегистрирован: 26. Ноября 2008
Re: Проблема с подзапросом
Ответ #3 - 26. Ноября 2008 :: 12:52
Печать  
Плохо быть бестолковым.

Спасибо.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать