Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Запрос выбирает все товары с таблицы (с уникальными кодами) с максимальными датами.
И он прекрасно работает.

SELECT Склад_Real_ввезення.Код_товару, Кількість, Ціна_прихідна,
(Кількість * Ціна_прихідна) AS Сума
FROM (SELECT Склад_Real_ввезення.[Код_товару], Max(Склад_Real_ввезення.Дата)
AS [Max-Дата] FROM Склад_Real_ввезення GROUP BY
Склад_Real_ввезення.[Код_товару])
AS T INNER JOIN Склад_Real_ввезення ON (T.[Код_товару] = Склад_Real_ввезення.[Код_товару])
AND (T.[Max-Дата] = Склад_Real_ввезення.Дата)

И кроме всего этого мне еще надо выбрать название товара, но оно имеется в другой таблице (Довідник_товарів). Тоесть связать Склад_Real_ввезення и Довідник_товарів по коду.
Что я только не делал - говорит "Параметр "Назва_товару" не имеет значения по умолчанию".
16 июн 04, 09:49    [744202]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
Темный
Member

Откуда:
Сообщений: 11941
Э-э-э... А где в запросе это поле???
16 июн 04, 15:51    [745732]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Почему-то я так и знал, что последует такой вопрос ... :-)
Этот запрос без поля Назва_товару. Я не стал его вписывать поскольку оно не пашет.
Хорошо, я напишу так:

SELECT Склад_Real_ввезення.Код_товару, Кількість, Довідник_товарів.Назва_товару, Ціна_прихідна,
(Кількість * Ціна_прихідна) AS Сума
FROM (SELECT Склад_Real_ввезення.[Код_товару], Max(Склад_Real_ввезення.Дата)
AS [Max-Дата] FROM Довідник_товарів, Склад_Real_ввезення GROUP BY
Склад_Real_ввезення.[Код_товару])
AS T INNER JOIN Склад_Real_ввезення ON (T.[Код_товару] = Склад_Real_ввезення.[Код_товару])
AND (T.[Max-Дата] = Склад_Real_ввезення.Дата)

Подскажите пожайлуста в чем моя ошибка, где я неправильно делаю?
Напомню, акксесс говорит "Параметр "Назва_товару" не имеет значения по умолчанию".
В таблице Склад_Real_ввезення нет названия товара, там только код, оно есть
в справочнике товаров.
16 июн 04, 23:27    [746693]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Почему-то я так и знал, что последует такой вопрос ... :-)
Этот запрос без поля Назва_товару. Я не стал его вписывать поскольку оно не пашет.
Хорошо, я напишу так:

SELECT Склад_Real_ввезення.Код_товару, Кількість, Довідник_товарів.Назва_товару, Ціна_прихідна,
(Кількість * Ціна_прихідна) AS Сума
FROM (SELECT Склад_Real_ввезення.[Код_товару], Max(Склад_Real_ввезення.Дата)
AS [Max-Дата] FROM Довідник_товарів, Склад_Real_ввезення GROUP BY
Склад_Real_ввезення.[Код_товару])
AS T INNER JOIN Склад_Real_ввезення ON (T.[Код_товару] = Склад_Real_ввезення.[Код_товару])
AND (T.[Max-Дата] = Склад_Real_ввезення.Дата)

Подскажите пожайлуста в чем моя ошибка, где я неправильно делаю?
Напомню, акксесс говорит "Параметр "Назва_товару" не имеет значения по умолчанию".
В таблице Склад_Real_ввезення нет названия товара, там только код, оно есть
в справочнике товаров.
16 июн 04, 23:30    [746697]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
(c)VIG
Member

Откуда:
Сообщений: 1507
SELECT Склад_Real_ввезення.Код_товару, Кількість, Довідник_товарів.Назва_товару, Ціна_прихідна,
(Кількість * Ціна_прихідна) AS Сума
FROM (SELECT Склад_Real_ввезення.[Код_товару], Max(Склад_Real_ввезення.Дата)
AS [Max-Дата] FROM Склад_Real_ввезення GROUP BY
Склад_Real_ввезення.[Код_товару])
AS T INNER JOIN Склад_Real_ввезення ON (T.[Код_товару] = Склад_Real_ввезення.[Код_товару])
AND (T.[Max-Дата] = Склад_Real_ввезення.Дата)
inner join Довідник_товарів on Склад_Real_ввезення.[Код_товару]=Довідник_товарів.[Код_товару]
?
16 июн 04, 23:43    [746705]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Спасибо огромное, еще правда не проверял, сейчас нет возможности.
Даже не ожидал, только написал - уже ответ.
16 июн 04, 23:51    [746716]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Хм, рано радовался :-)
Сейчас попробовал, говорит:
Ошибка синтаксиса (пропущен оператор) в выражении запроса '(T.[Код_товару]=Склад_Real_ввезення.[Код_товару]) AND (T.[Max-Дата]=Склад_Real_ввезення.Дата) INNER JOIN Довідник_товарів ON Склад_Real_ввезення.[Код_товару]=Довідник_товарів.[Код_товару]".

Помогите пожайлуста, потому что с вложеными запросами никогда не работал - первый раз понадобилось, а работа стоит на месте уже который день.
17 июн 04, 00:20    [746725]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
Владимир Саныч
Member

Откуда: Израиль (причем это 1 человек, а не 2 => прошу на ты)
Сообщений: 40414
SELECT Склад_Real_ввезення.Код_товару, Кількість, Довідник_товарів.Назва_товару, Ціна_прихідна,
(Кількість * Ціна_прихідна) AS Сума
FROM (((SELECT Склад_Real_ввезення.[Код_товару], Max(Склад_Real_ввезення.Дата)
AS [Max-Дата] FROM Склад_Real_ввезення GROUP BY
Склад_Real_ввезення.[Код_товару])
AS T INNER JOIN Склад_Real_ввезення ON (T.[Код_товару] = Склад_Real_ввезення.[Код_товару])
AND (T.[Max-Дата] = Склад_Real_ввезення.Дата))
inner join Довідник_товарів on Склад_Real_ввезення.[Код_товару]=Довідник_товарів.[Код_товару])

Я так думаю. (С) "Мимино".
17 июн 04, 01:14    [746748]     Ответить | Цитировать Сообщить модератору
 Re: Вложеные запросы  [new]
S_Oleh
Member

Откуда: Львов
Сообщений: 6
Спасибо Саныч! Теперь, запрос - просто красавец.
Тема закрыта.
17 июн 04, 23:38    [749496]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить