Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.01;
Скачать: 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 вся ветка

Текущий архив: 2002.04.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
6-278
Velocity
2002-01-17 07:28
2002.04.01
BROADCAST-пакет в локалке


6-259
SemFLY
2002-01-18 21:05
2002.04.01
Передача файлов через Socket.


1-163
Max
2002-03-22 08:32
2002.04.01
Delphi 5 + W2k


1-100
Maybe
2002-03-20 15:58
2002.04.01
экземпляры различных классов в одной коллекции


7-325
SolSoft
2001-12-19 11:09
2002.04.01
Клавиатура в ноутбуке