Форум: "Базы";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];
ВнизЗапрос на выборку из дву таблиц Найти похожие ветки
← →
Iehbr (2006-05-30 14:50) [0]Уважаемые Мастера, делаю в Аccess такой запрос:
SELECT Zayavki.DateA, Nms.Name, Zayavki.Zayava
FROM Zayavki INNER JOIN Nms ON Zayavki.Autor=Nms.[No];
как мне сделать так, чтобы в этом же запросе выбрать еще и
Nms.Name по условию Zayavki.Ispolnitel = Nms.[No]
← →
sniknik © (2006-05-30 14:57) [1]... OR Zayavki.Ispolnitel = Nms.[No]
← →
Iehbr (2006-05-30 15:07) [2]SELECT Zayavki.DateA, Nms.Name, Zayavki.Zayava, Nms.Name AS Ispolnit
FROM Zayavki INNER JOIN Nms ON Zayavki.Autor=Nms.[No] OR Zayavki.Ispolnitel = Nms.[No];
Так что-ли? По моему не будет работать...
← →
Iehbr (2006-05-30 15:10) [3]Я имею ввиду, что мне надо отобразить таблицу вида:
Дата | Автор| Заявка | Исполнитель|
← →
Sergey13 © (2006-05-30 15:15) [4]С синтаксисом скорее всего напутал (ибо не знаю аксеса), но как то так.
SELECT Zayavki.DateA, Nms1.Name, Zayavki.Zayava, Nms2.Name AS Ispolnit
FROM Zayavki
INNER JOIN Nms Nms1 ON Zayavki.Autor=Nms.[No]
INNER JOIN Nms Nms2 ON Zayavki.Ispolnitel = Nms.[No];
← →
Iehbr (2006-05-30 15:36) [5]Сергей, спасибо, но предложенная тобой конструкция не работает :(
Я сам ни в акцессе ни в зуб ногой и SQL с утра начал изучать.
← →
Iehbr (2006-05-30 15:40) [6]Есть у меня предположение, что нужно писать подчиненный запрос.
Может наведете на мысль?
← →
Sergey13 © (2006-05-30 16:00) [7]2 [5] Iehbr (30.05.06 15:36)
>предложенная тобой конструкция не работает :(
Как не работает? Просто молчит или совсем выключает комп? 8-)
Или все таки ошибки выдает? Какие? Может там запятую какую нибудь добавить?
← →
Iehbr (2006-05-30 16:06) [8]ошибка синтаксиса (пропущен оператор) в выражении запроса "Zayavki.Autor=Nms.[No]
INNER JOIN Nms Nms2 ON Zayavki.Ispolnitel = Nms.[No]"
← →
MsGuns © (2006-05-30 16:33) [9]SELECT Zayavki.DateA, Nms1.Name, Zayavki.Zayava, Nms2.Name AS Ispolnit
FROM (Zayavki INNER JOIN Nms Nms1 ON Zayavki.Autor=Nms.[No])
INNER JOIN Nms Nms2 ON Zayavki.Ispolnitel = Nms.[No];
← →
Iehbr (2006-05-30 16:51) [10]
> SELECT Zayavki.DateA, Nms1.Name, Zayavki.Zayava, Nms2.Name
> AS Ispolnit
> FROM (Zayavki INNER JOIN Nms Nms1 ON Zayavki.Autor=Nms.[No])
>
> INNER JOIN Nms Nms2 ON Zayavki.Ispolnitel = Nms.[No];
Ошибка синтаксиса в операции JOIN.
У меня подозрения, что в JETSQL нельзя писать JOIN Nms Nms2
По крайней мере в справке по JETSQL ничего подобного нет.
И ничего не говорится о последовательном применении INNER JOIN
Вот выдержка из справки
Синтаксис
FROM таблица_1 INNER JOIN таблица_2 ON таблица_1.поле_1 оператор таблица_2.поле_2
← →
sniknik © (2006-05-30 17:13) [11]> Так что-ли? По моему не будет работать...
с чего бы это? работать будет, и выдаст даже больше чем ожидаеш ... (как заказывал -> "еще и")
> По крайней мере в справке по JETSQL ничего подобного нет.
> И ничего не говорится о последовательном применении INNER JOIN
> Вот выдержка из справки
> ....
есть, справку надо просто полностью читать, а не выдржками, прямо на той же странице откуда это взял есть пример... 3 примера - простой, с AND/OR в условии, и вложенный.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c