Здравствуйте!
Насколько я знаю следующие 2 запроса должны выдавать одинаковый
результат:
1. select T1.id, T2.ID, TJ.IDS
from T2, T1
left join TJ on (T1.ID = TJ.ID)
where (T2.ID = T1.ID)
2. select T1.id, T2.ID, TJ.IDS
from T1, T2
left join TJ on (T1.ID = TJ.ID)
where (T2.ID = T1.ID)
(они отличаются второй строчкой: from ... )
однако второй запрос в столбце TJ.IDS выдает неправильный результат.
Это бага или так должно быть?
проверялось на Firebird-2.0.0.12710-0-Win32.exe от 4 июля.
вот скрипт для создания всего необходимого:
CREATE TABLE T1 (
ID INTEGER NOT NULL
);
CREATE TABLE TJ (
ID INTEGER NOT NULL,
IDS INTEGER NOT NULL
);
CREATE TABLE T2 (
ID INTEGER NOT NULL
);
commit;
INSERT INTO T1 (ID) VALUES (1);
INSERT INTO T1 (ID) VALUES (2);
INSERT INTO TJ (ID, IDS) VALUES (1, 1);
INSERT INTO TJ (ID, IDS) VALUES (2, 2);
INSERT INTO T2 (ID) VALUES (1);
INSERT INTO T2 (ID) VALUES (2);
commit;
--
С уважением Баязитов Марат
mailto:[EMAIL PROTECTED]