Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите пожалуйста подправить запрос  [new]
Gutjar
Member

Откуда: Калининград
Сообщений: 33
Всем привет.
Плохо разбираюсь в SQL поэтому прошу помощи.
В приведенном ниже скрипте есть ошибка с которой никак не получается справится, а точнее я просто не знаю как сделать связку чтобы все отобразилось верно.
Суть в том что мне нужно выводить T$KATPARTY.F$NAME - это наименование партии, но есть записи у которых этого наименования нет и это допускается. Но при моей связке они показываются с неверными наименованиями партий (декартово произведение кажется это называется)
Я так понимаю что в эту строку T$SPSOPR as SPSOPR inner join T$KATPARTY on SPSOPR.F$CPARTY = T$KATPARTY.F$NREC нужно добавить еще какой то параметр чтобы было все верно?
В общем прошу помощи.
+
use Test_Rus
select T$KATSOPR.F$NSOPR, 
	   T$KATSOPR.F$DSOPR, 
	   T$KATMC.F$NAME,
	   T$SPORDER.F$KOL,
	   T$SPSOPR.F$PRICE, 
	   katorg2.F$NAME,
	   T$KATORG.F$NAME, 
	   T$KATPARTY.F$NAME, 
	   T$SKLORDER.F$NORDER, 
	   T$KATPODR.F$NAME, 
	   T$KATORG.F$ADDR
from T$KATSOPR inner join T$SPSOPR on T$KATSOPR.F$NREC = T$SPSOPR.F$CSOPR, 
     T$SPSOPR as SPSOPR inner join T$KATPARTY on SPSOPR.F$CPARTY = T$KATPARTY.F$NREC,
     T$KATORG,
     T$SKLORDER, 
     T$SPORDER , 
     T$KATPODR, 
     T$KATORG as katorg2,
     T$KATMC
where
(
201 = T$KATSOPR.F$VIDSOPR and
--T$KATSOPR.F$NREC = T$SPSOPR.F$CSOPR   and
T$KATSOPR.F$CORGBASE = T$KATORG.F$NREC and
T$SPSOPR.F$CMCUSL = T$KATMC.F$NREC and
1 = T$SPSOPR.F$PRMC and
--T$SPSOPR.F$CPARTY = T$KATPARTY.F$NREC and
T$SPSOPR.F$NREC = T$SPORDER.F$CSPSOPR and
T$SPORDER.F$CSKLORDER = T$SKLORDER.F$NREC and
T$SKLORDER.F$CPODR = T$KATPODR.F$NREC  and
T$KATSOPR.F$CGRUZTO = katorg2.F$NREC
); 
19 янв 12, 17:06    [11934415]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста подправить запрос  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
Gutjar, а два синтаксиса вы смешали чтобы потенциального врага запутать?
19 янв 12, 17:11    [11934458]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста подправить запрос  [new]
Gutjar
Member

Откуда: Калининград
Сообщений: 33
Нет, я пытаюсь переписать все для использования конструкции с JOIN, но я раньше им не пользовался поэтому имеем что имеем)
19 янв 12, 17:17    [11934500]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста подправить запрос  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
Gutjar
Нет, я пытаюсь переписать все для использования конструкции с JOIN, но я раньше им не пользовался поэтому имеем что имеем)

Ну так изучите синтаксис, заодно освойте псевдонимы (алиасы) и жить станет гораздо легче. А переписывайте по-немногу добавляя объединения к запросу, типа:
USE Test_Rus
SELECT  t.F$DSOPR f1, t1.F$PRICE f2
FROM    T$KATSOPR t
INNER JOIN T$SPSOPR t1
ON      t.F$NREC = t1.F$CSOPR

и т.д.
19 янв 12, 17:22    [11934541]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить