Deutsch

SQL. Кто виноват?

23.06.05 08:53
Re: SQL. Кто виноват?
 
toptop постоялец
в ответ Murr 23.06.05 01:46
Сформулирую вопрос,
почему главный запрос выдает ошибку с подзапросом
Select f1, f2, f3 From tab Where <...> 

и не выдает с подзапросом

Select f1, f2, f3 From tab Where <...> 
Union
Select f1, f2, f3 From Tab where Id in (0)

?
Оба приведенных запроса выдают идентичные результаты, так как Id = 0 в таблице нет и не будет.
...
tab и Tab описка. К тому же Access к этому не чувствителен.
???
Хочется разумного или логичного объяснения.

В ответ на:
Вроде как при UNION Аккцесс не может повторно пометить выбранные первым Селектом записи... В результате дублирующиеся строки не добавляются второй раз в конечную выборку... Обходится путем множественного INSERT INTO в промежуточную таблицу и селектом Join на нее.

Проще UNION ALL, тогда проверка дубликатов не производится, я так в конечное решение и включил.
 

Перейти на