Форум: "Начинающим";
Текущий архив: 2006.01.15;
Скачать: [xml.tar.bz2];
ВнизПодскажите по SQL Найти похожие ветки
← →
DimonS © (2005-12-27 07:59) [0]Добрый день всем и с наступающим НГ!
А вопрос вот какой, ламерский, наверное.
Есть БД (Access). В ней имеются 3 таблицы:
Справочник заказчиков:
Kod - уникальный код заказчика;
Name - наименование его же.
Справочник техники:
Cod - код данной техники;
Cena - цена 1 моточаса, у всех разная.
Таблица Товарно-Транспортных накладных:
Cod - код техники;
Kod - код заказчика;
Chas - отработанные часы.
Можно ли соединить эти таблицы одним запросом так, чтобы получить сводные данные за месяц - Наименование заказчика, Отработанные часы по ВСЕЙ технике и общую сумму за месяц для каждого заказчика, типа такой:
Наменование | Отработано, ч | Сумма
Если можно так сделать, то подскажите, плз, как, желательно с примером, т.е. сам запрос.
← →
menart © (2005-12-27 08:14) [1]
select Name, Sum(Chas), Sum(Cena) from [Справочник заказчиков], [Справочник техники], [Таблица Товарно-Транспортных накладных]
where [Справочник заказчиков].Kod=[Таблица Товарно-Транспортных накладных].Kod and [Справочник техники].Cod=[Таблица Товарно-Транспортных накладных].Cod
← →
DimonS © (2005-12-27 08:32) [2]Такая не катит. Во-первых, цены складывать нельзя. Нужно именно перемножить цену на количество часов каждого механизма и затем сложить их. Так понятнее? Можно, конечно, реализовать через циклы, а просто запросом реально?
← →
evvcom © (2005-12-27 08:39) [3]
> Sum(Cena)
Sum(Cena * Chas)
> Kod
> Cod
Сам-то запомнил какой код чей? Именовать поля/переменные надо более говорящими именами. Имхо.
← →
menart © (2005-12-27 09:09) [4]Да и добавь Group By Name
Извеняюсь забыл
← →
DimonS © (2005-12-27 09:10) [5]То evvcom
Это я привел просто левые коды.
Вот, пишу такой код:
select Z.Name, Sum(T.Cena03*B.Chas) from Zak Z,Tehnica T,TTN B where Z.Nom="B.Zakaz" and B.Сod=T.Cod Group By Z.Name
В результате выдается пустая таблица. В чем ошибка?
Zak - заказчики, Tehnica - техника, TTN - товарки.
← →
Johnmen © (2005-12-27 09:12) [6]...where Z.Nom="B.Zakaz" and...
"Поспешишь - людей насмешишь" (c)
← →
DimonS © (2005-12-27 10:00) [7]Все, спасибо всем. Просто в таблице заказчиков поле Nom было текстового типа, заменил - все стало ОК!
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.01.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c