Страница: 1 |
Читаю описание SQL, там написанно есть три оператора определяющие отношения между запросами. Первый UNION - объединяет два подзапроса с одинаковой структурой, это работает: SELECT * FROM Authors WHERE AU_ID BETWEEN 10 AND 15 UNION SELECT * FROM Authors WHERE AU_ID=21 Второй INTERSECT - выбирает только одинаковые строки из двух запросов. Не работает. И третий EXCEPT выбирает строки первого запроса, которые отсутствуют во втором. Тоже не работает. Правда access не SQL , но я буду работать через ADO , а тестирую запросы в access , кроме того база то MDB. Вопрос: эти выражения действительно не работают или у меня не верный синтаксис?
Дело в том, что функции INTERSECT и EXCEPT предназначены для работы со строками, но не для использования внутри SELECT. Например: Intersect({[1994], [1995], [1996]}, {[1995], [1996], [1997]}) Страница: 1 |
Вопрос: Слово EXCEPT в SQL не работает?
Добавлено: 10.02.04 09:52
Автор вопроса: Makc2K
Ответы
Всего ответов: 1
Номер ответа: 1
Автор ответа:
ol2003
Вопросов: 3
Ответов: 122
Профиль | | #1
Добавлено: 11.02.04 04:38
Except({Canada, [British Columbia], Mexico, [British Columbia], USA, Washington}, {Canada, Mexico, California}, ALL)
Для селектов используется UNION и JOIN
select a.f1, a.f2 from table1 a join table2 b on a.f3=b.f3