Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) Ошибка в прямом запросе (получить первое движение по регистру) (число прочтений - 4879 )
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Ошибка в прямом запросе (получить первое движение по регистру)
Ответ #15 - 10. Сентября 2012 :: 05:57
Печать  
Dmitry The Wing писал(а) 10. Сентября 2012 :: 02:01:
Он в подзапрос пытается передать данные, которые получает позже во внешнем запросе... а то, что это невозможно - его не сильно волнует...


не понял...
кажись так всегда было: подзапрос можно связывать с внешним запросом.

пример из книги "SQL. Рукводство по изучению...":

Код
Выбрать все
SELECT a.au_id, a.city
FROM authors a
INNER JOIN publishers p
ON a.city = p.city;
 



а вот описание сложных подзапросов:

Код
Выбрать все
Сложный подзапрос не может рассматри-
ваться отдельно от внешнего запроса; он
представляет собой внутренний запрос,
который зависит от данных внешнего
запроса. Сложный запрос используется
в том случае, если команде необходимо
обработать таблицу во внутреннем запро-
се для каждой строки внешнего запроса 

  
Наверх
ICQ  
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: Ошибка в прямом запросе (получить первое движение по регистру)
Ответ #16 - 10. Сентября 2012 :: 06:03
Печать  
es3000 писал(а) 10. Сентября 2012 :: 05:57:
пример из книги "SQL. Рукводство по изучению..."
В этом примере нет подзапросов. только соединение...
Ты можешь "передать параметры" только на одном уровне:
Код
Выбрать все
Select ...
From ...
Inner Join ... ON ... 

Вот это один уровень, а ты пытаешься внутри подзапроса получить данные этого уровня, что есть невозможно в принципе!
  
Наверх
 
IP записан
 
Nice
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 26
Зарегистрирован: 09. Июля 2007
Re: Ошибка в прямом запросе (получить первое движение по регистру)
Ответ #17 - 10. Сентября 2012 :: 10:59
Печать  
Можно использовать корреляционные переменные в предложениях WHERE и SELECT, но ни как не в соединении
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Ошибка в прямом запросе (получить первое движение по регистру)
Ответ #18 - 10. Сентября 2012 :: 11:41
Печать  
Подзапрос кидай в ветку where (where iddoc in (slect позиция ....), в подзапросе min(позиция дока)
+условия на измерения из внешнего запроса..
можешь и top 1 + order by позиция .



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