Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 14.06.2015
Сообщений: 5

Выбор товара по минимальной цене, у второго добираем необходимое количество

14.06.2015, 18:55. Показов 2514. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет.
Есть 2 таблички с полями:
-товар,"количество нужно" и
-поставщик,товар,цена,"количество имеется".

Подскажите как закупиться товаром с минимальными затратами?
Т.е. берем у первого поставщика по минимальной цене, у второго добираем необходимое количество по чуть большей цене и т.д.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.06.2015, 18:55
Ответы с готовыми решениями:

Найти название товара, который по цене наиболее близкий к средней цене
Задан массив из 2 столбцов Excel "Цены" и "Товары" Нужно найти название одного товара, который по цене наиболее близкий к средней цене. ...

Поиск по цене товара и количеству товара
1.Составьте программу, которая обеспечивает ввод данных, вывод данных, поиск по цене товара и количеству товара К. Каждая запись содержит...

Запрос по минимальной цене
Ребят помогите пожалуйста, есть запрос:select min (Vid_Karti.CENA) as "Минимальная цена" from Vid_Karti нужно добавить еще поля с этой же...

9
Эксперт MS Access
2837 / 1378 / 216
Регистрация: 13.05.2011
Сообщений: 4,220
14.06.2015, 20:23
temich7, Я так думаю, что первая таблица будет у Вас приходом.

Вот в ней и пишите, что за товар, то количество, которое берете у одного поставщика, вторая запись в этой таблице будет другое количество от другого поставщика.

В запросах все ваши приходы суммируются.
0
0 / 0 / 0
Регистрация: 14.06.2015
Сообщений: 5
14.06.2015, 20:37  [ТС]
Вячеслав Я, не совсем понял ход Вашей мысли
Первая табличка - заявка, то что нам нужно получить, заполняется вручную. Из второй таблички нужно получить то что указано в заявке, чтобы сумма денег получилась минимальная.
0
Эксперт MS Access
2837 / 1378 / 216
Регистрация: 13.05.2011
Сообщений: 4,220
14.06.2015, 20:41
temich7, Во-первых, зачем заполнять вручную, если есть комп. с базой данных. Отпечатать же можно и на нем; Во-вторых: чтобы было понятнее и Вам и нам необходимо выложить на форум ваш пример. На нем и покажем как мы видим решение вашей задачи.
0
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
14.06.2015, 20:45
Попробуйте запрос, но поставьте свои имена. Таблицы Есть и Надо. В Есть поля: Поставщик, Товар, Цена, КолЕсть. В Надо поля: Товар, КолНужно.
Поля Поставщик и Товар текстовые. Если числовые, надо убрать апострофы
В поле запроса [БеремУПоставщика] количество товара забираемое у данного поставщика. Поля запроса [nak] и [delt] вспомогательные
SQL
1
2
3
4
5
6
7
SELECT Поставщик, Есть.Товар, Цена,  SUM(КолЕсть) AS sm, 
dsum("КолЕсть", "Есть", "Товар='" & Есть.Товар & "' and Цена<=" & Цена) AS nak, 
nak-Надо.КолНужно AS delt,
abs(iif(delt>0, Надо.КолНужно-dsum("КолЕсть", "Есть", "Товар='" & Есть.Товар & "' and Цена<" & Цена), sm)) AS БеремУПоставщика
FROM Есть INNER JOIN Надо ON Есть.Товар=Надо.Товар
GROUP BY Есть.Товар, Цена, Поставщик, Надо.КолНужно 
HAVING SUM(КолЕсть)<=Надо.КолНужно
0
0 / 0 / 0
Регистрация: 14.06.2015
Сообщений: 5
14.06.2015, 21:11  [ТС]
mobile, перевел все значения для моих табличек.
Ругается на то что запрос не включает выражение dsum... как часть агрегатной функции

Добавлено через 1 минуту
Вячеслав Я, выложить БД ?
0
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
14.06.2015, 21:20
Лучший ответ Сообщение было отмечено temich7 как решение

Решение

Цитата Сообщение от temich7 Посмотреть сообщение
Ругается
Разве? Значит не все перевели на свои поля. Вот смотрите тестовый пример. Были бы Ваши данные, сделал бы на них.
Выполните Запрос1.
Вложения
Тип файла: rar МинЦена.rar (11.3 Кб, 13 просмотров)
1
0 / 0 / 0
Регистрация: 14.06.2015
Сообщений: 5
14.06.2015, 21:34  [ТС]
Интересующие нас таблицы:
- заявка на ТС
- коммерческие предложения

Результаты записываются в таблицу "проект закупки".

Запрос "выбор техники из заявкиТС" выбирает из списка всех заявок только последнюю.
Запрос "выбор техники из КП" выбирает из коммерческих предложений только те позиции что есть в заявках.
Вложения
Тип файла: rar закупки.rar (113.5 Кб, 9 просмотров)
0
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
14.06.2015, 23:05
Выполните запрос [ВыборПоМинЦене]
Вложения
Тип файла: rar закупки.rar (40.0 Кб, 14 просмотров)
1
0 / 0 / 0
Регистрация: 14.06.2015
Сообщений: 5
14.06.2015, 23:33  [ТС]
mobile, работает но чуть с ошибками считает.
Например если в заявках оставить только последнюю строку ( 17 системных блоков) на выходе получим 7 системников.
Вы так быстро придумываете запросы что я даже с предыдущим "разобраться" не успел
Он работает без нареканий, попробую его понять и адаптировать к БД. Большое спасибо за помощь!

P.S. можно я, если что-то не пойму в запросе, еще спрошу?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.06.2015, 23:33
Помогаю со студенческими работами здесь

Определение количества АЗС, продающих бензин по минимальной цене
Не могу догадаться, как сделать без создания массива N элементов, ведь мы сможем узнать минимальную цену только после прогонки N раз, а...

Определить названия товаров, которые продавались по минимальной цене
Здравствуйте!!! помогите пожалуйста! Из информации, содержащейся в файлах query, определить названия товаров, которые продавались по...

Вывод товара по цене
Есть сайт, я заполнил его товаром, теперь вопрос, как сделать выборку товара по цене в каждом розделе( допустим захожу я в раздел женские...

Отсортировать записи по цене товара
Программа создает массив записей с данными о продукции на складе фирмы код товара, название товара, фирма-производитель , дата...

Массив записей. Структура: наименование товара, его количество, цену за единицу товара и общую стоимость данного товара
Пожалуйста помогите с задачкой на массивы для экзамена.. 1.Разработать программу на ЯП Pascal, в которой происходит заполнение массива...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru