Вниз
Скачать: CL | DM;

SQL Query в связанных таблицах   Найти похожие ветки 

← →
YVaschuk ©   (2002-03-06 13:36) [0]

Ниже представлены два запроса одинаковых по условиям но разных по описанию входных таблиц. Но один работает, т.е. возвращает корректные данные, а второй возвращает пустую таблицу.

Структура базы:
Main
|
Mes--Doplata
|_Uders

Не работающий запрос:
SELECT a.*
FROM Main a
INNER JOIN Mes b
ON (a.ID = b.ID_MAIN)
INNER JOIN Doplata c
ON (b.ID = c.ID_MES)
INNER JOIN Uders d
ON (b.ID = d.ID_MES)
WHERE ( (a.FACULTET = 2) )
ORDER BY a.FAMI, a.KOD

Работающий запрос:
SELECT a.*
FROM Main a
INNER JOIN Mes b
ON (a.ID = b.ID_MAIN)
WHERE ( (a.FACULTET = 2) )
ORDER BY a.FAMI, a.KOD


← →
YVaschuk ©   (2002-03-06 13:59) [1]

Самое главное - ВОПРОС!!!
Как исправить неработающий запрос так что-бы он возвращал данные работающего запроса?

Ответ типа - удали:
INNER JOIN Doplata c
ON (b.ID = c.ID_MES)
INNER JOIN Uders d
ON (b.ID = d.ID_MES)
не подходит.

Т.к. в дальнейшем будут создаваться запросы с параметрами использующими данные связанных таблиц.


← →
Praco ©   (2002-03-06 14:32) [2]

В одной из таблиц (Doplata ,Uders ) нет записей, соответствующих предыдущей выборке. Используй внешние объединения.


← →
boogier   (2002-03-07 11:30) [3]

inner -> left outer


← →
YVaschuk ©   (2002-03-07 13:59) [4]

Спасибо всем за активность. Теперь все Ок.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
6-255
Valdemar
2002-01-17 14:37
2002.04.01
Работа с сокетами


1-225
VJar
2002-03-20 16:10
2002.04.01
Текст скрытый звездочками


1-188
madburro
2002-03-18 23:15
2002.04.01
Print


4-351
JAndrey
2002-01-31 01:18
2002.04.01
Как определяет Windows что был сброс Резетом и как запускает


6-267
Reals
2002-01-17 15:38
2002.04.01
В локальной сети, нужно найти только сервер(а) (его имя).




   Наверх