|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Что-то голова не варит. Подкинули задачку. Есть сводная таблица: покупатель, группа товара, товар, количество например. ================ Покупатель: Антон Группа товара: Соки Товар: яблочный - 2 литра, виноградный - 1 литр, томатный - 3 литра Группа товара: Крупы Товар: Гречка - 3 кг, рис - 2 кг, ячка - 1 кг. и т.д. ================= Задача. Для каждого покупателя выбрать по каждой группе наиболее покупаемый товар. Т.е должно получиться ================= Покупатель: Антон Группа товара: Соки Товар: томатный - 3 литра Группа товара: Крупы Товар: Гречка - 3 кг, ================= Я таблицу просто записал немного по другому Это надо сделать запросами. Помню, что когда-то такое делал, но сейчас никак не могу вспомнить как? ------------------------------------------------------------- А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 16:35 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Joss, сначала сгруппировать по покупателю, группе, максимальное значение в группе. Далее внутреннее соединение (INNER JOIN) основной таблицы с запросом по полям - по покупателю, группе, максимальному значению в группе. Что делать при двух и более товаров в одинаковом количестве? не проверял... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 18:11 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Панург, по пути домой что-то такое в голове вертелось. Счас попробую. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 19:53 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
JossЕсть сводная таблица: покупатель, группа товара, товар, количествоЯ верно понимаю, что: 1) (покупатель, группа товара, товар) - уникально 2) группа товара (1:М) товар 3) все поля NOT NULL ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 20:20 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Joss, Я так думаю - тебе задачу на пальцах объяснили, примерно так, как ты сейчас тут, уверен если бы был пример таблица-вход, таблица-выход, то и поста бы небыло... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 00:51 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
AkinaJossЕсть сводная таблица: покупатель, группа товара, товар, количествоЯ верно понимаю, что: 1) (покупатель, группа товара, товар) - уникально 2) группа товара (1:М) товар 3) все поля NOT NULL ? Не совсем так. Покупатель может заказывать одинаковый товар несколько раз в течении обрабатываемого периода, так что я сначала сделал запрос за период. где суммировал все закупки покупателя. И да. В полученной таблице/запросе все записи уникальны. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 09:24 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
vmagJoss, Я так думаю - тебе задачу на пальцах объяснили, примерно так, как ты сейчас тут, уверен если бы был пример таблица-вход, таблица-выход, то и поста бы небыло... Дело в том, что это типичные задачи (там ещё парочка есть). Я даже на каких-то курсах в интернете похожее встречал. И решал когда-то. Но сейчас голова совсем другим забита и никак переключиться на новую тему не может. И отказаться нельзя... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 09:32 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Ну эту проблему я решил 4-мя последовательными запросами. Подкинули другую. Рассчитать интервалы между заказами для каждого заказчика. Вот сижу, чешу репу. Не знаю, с какой стороны за это задание браться. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 14:02 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
JossНу эту проблему я решил 4-мя последовательными запросами.так показал бы. Вдруг ещё кто будет искать. Но только как полагается - табличка исходных данных, решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 15:04 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Хорошо, сейчас выложу. Решал на основе таблиц базы Northwind.mdb 1. Подсчитываем кто чего и сколько купил. Вот этот запрос - qrt6 Код: sql 1. 2. 3.
2. На основе этого запроса подсчитываем максимальные покупки по категориям Вот этот запрос - qrt7 Код: sql 1. 2. 3.
3. Теперь связываем запрос qrt7 с запросом qrt6 по полям CategoryID, CustomerID и .SumQuantity = MaxSumQuantity Получаем вот такой запрос qrt8 Код: sql 1. 2.
4. А теперь добавляем таблицу Customers и берём данные о клиенте Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 17:00 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
JossРешал на основе таблиц базы Northwind.mdb А там нечто похожего не было? Уже и не помню, а под рукой нет... JossПодкинули другую. Рассчитать интервалы между заказами для каждого заказчика. Вот сижу, чешу репу.так вроде не сложно. можно, например, через коррелированный подзапрос. Это если я правильно понял. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.03.2019, 17:57 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Вот здесь можно скачать базы Northwind.mdb и Борей http://www.cyberforum.ru/ms-access/thread838709.html ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 10:12 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
ПанургJossРешал на основе таблиц базы Northwind.mdb А там нечто похожего не было? Уже и не помню, а под рукой нет... Не разобрался, было или нет. А описания базы нет. Холя где-то в сети пробегало. На ней многие примеры и курсы основаны. Да и в книгах по Access она упоминается. ПанургJossПодкинули другую. Рассчитать интервалы между заказами для каждого заказчика. Вот сижу, чешу репу.так вроде не сложно. можно, например, через коррелированный подзапрос. Это если я правильно понял. Поясни пожалуйста, что имел ввиду? Примитивная таблица из двух полей. Заказчик, дата заказа. Рассчитать интервалы между заказами для каждого заказчика. И составить список (выборку), у которых интервалы были не больше месяца (2, 3, полгода). ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 10:20 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
JossДля каждого покупателя выбрать по каждой группе наиболее покупаемый товар. Что нужно вывести, если в группе есть два разных товара с одинаковым максимальным количеством. Оба товара? Один (какой)? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 10:41 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
JossПоясни пожалуйста, что имел ввиду? Примитивная таблица из двух полей. Заказчик, дата заказа. Рассчитать интервалы между заказами для каждого заказчика. И составить список (выборку), у которых интервалы были не больше месяца (2, 3, полгода). Если я правильно понял задачу Таблица IDCustomerIDDateOrder111.3.20192110.3.20193120.3.20194130.3.2019521.3.20196210.4.20197220.5.20198230.6.2019 Код: sql 1. 2. 3. 4.
Результат CustomerIDDateOrderDateDifference11.3.20199110.3.201910120.3.201910130.3.201921.3.201940210.4.201940220.5.201941230.6.2019 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 11:08 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Поле не то написал, поправил... Панург Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 11:13 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
Joss, процедура вычисляет минимальный период заказа, главное здесь показано как собрать в общий массив: массив заказчиков и массив заказов, учитывая что массив заказов у каждого заказчика свой-решение чисто экселевское Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 12:01 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
ПанургПоле не то написал, поправил... Панург Код: sql 1. 2. 3. 4.
Использование подзапросов. Я о них только сегодня вспоминал. Я решил эту задачу иначе. Дико. Аж самому стыдно, но на удивление верно. И без подзапросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 13:02 |
|
Прошу помощи в формировании запроса.
|
|||
---|---|---|---|
#18+
aleckoJoss, процедура вычисляет минимальный период заказа, главное здесь показано как собрать в общий массив: массив заказчиков и массив заказов, учитывая что массив заказов у каждого заказчика свой-решение чисто экселевское Всё дело в том, что решить задачу надо при помощи запросов, а не VBA ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2019, 13:03 |
|
|
start [/forum/topic.php?fid=45&msg=39792719&tid=1610779]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 317ms |
total: | 432ms |
0 / 0 |