|
|
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
Имеется бд, с 4-мя таблицами: s,p,j,spj - модель приведена ниже модель бд таблица поставок spj таблица поставщиков s таблица изделий j таблица деталей p SQL-файл с базой необходимо: Выдать номера изделий, для которых детали полностью поставляет поставщик S1. Т.е. поставляемых поставщиком S1 деталей достаточно для полного комплектования изделия. Состав деталей изделия можно оценить на основе базового набора данных таблицы поставка, имея в виду, что в базовом наборе данных отражен полный состав всех изделий. Я не могу понять, как это можно сделать в одном запросе! Буду безумно благодарен, за любую помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 16:21:34 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
highlightswearнеобходимо: Выдать номера изделий, для которых детали полностью поставляет поставщик S1. Сделай наоборот - выдай список изделий, для которых НЕ нужны детали, поставляемые НЕ поставщиком S1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 16:26:04 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
Akinahighlightswearнеобходимо: Выдать номера изделий, для которых детали полностью поставляет поставщик S1. Сделай наоборот - выдай список изделий, для которых НЕ нужны детали, поставляемые НЕ поставщиком S1. Я конечно благодарен за совет, но это меня еще больше запутало! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 16:55:51 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
ТС, ты ничего не напутал???. ну и как узнать сколько каких деталей надо для изделия Х??? если ставить задачу именно как понял акина - найти изделия, для которых поставляет все детали только поставщик С1... то тогда да, получаем список деталей которые поставляет не С1, и потом ищем изделия, для которых не нужны детали из этого списка. но если то, как уточнил ты... что должна быть ещо одна табилца, где написано - изделие 1 всключает деталь1 кол1 изделие 1 всключает деталь2 кол2 ... и надо тогда по другому. но суть останеться таже. от противного отталкиваться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 17:30:16 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
highlightswearAkinaпропущено... Сделай наоборот - выдай список изделий, для которых НЕ нужны детали, поставляемые НЕ поставщиком S1. Я конечно благодарен за совет, но это меня еще больше запутало! что тут не ясного. есть поставщики - все. есть поставщики не С1 есть детали все есть детали которые поставляються поставщиком не С1(любым другим) есть изделия все. есть изделия для которых нужна хотябы одна деталь, поставляемая любым не С1 поставщиком а есть изделия для которых не нужна деталь, поставляемая любым не С1 поставщиком. найти рецепты блюд для которых в холодильнике, есть все ингридиенты. это тоже самое, что взять все блюда из фиксированного списка, для которых выполняеться условие - им не нужны ингридиенты, которых нету. ещо болле простой пример. найти людей, которые сдали все книги === найти людей, у которых НЕТУ НЕСДАННОЙ КНИГИ (в данные библиотеки пока человек не возьмёт книгу он не попадает) поэтмоу откидываем вариант человек никогда не брал книгу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 17:35:40 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
alex564657498765453highlightswearпропущено... Я конечно благодарен за совет, но это меня еще больше запутало! что тут не ясного. есть поставщики - все. есть поставщики не С1 есть детали все есть детали которые поставляються поставщиком не С1(любым другим) есть изделия все. есть изделия для которых нужна хотябы одна деталь, поставляемая любым не С1 поставщиком а есть изделия для которых не нужна деталь, поставляемая любым не С1 поставщиком. найти рецепты блюд для которых в холодильнике, есть все ингридиенты. это тоже самое, что взять все блюда из фиксированного списка, для которых выполняеться условие - им не нужны ингридиенты, которых нету. ещо болле простой пример. найти людей, которые сдали все книги === найти людей, у которых НЕТУ НЕСДАННОЙ КНИГИ (в данные библиотеки пока человек не возьмёт книгу он не попадает) поэтмоу откидываем вариант человек никогда не брал книгу. Я понимаю к чему ты клонишь, но я не могу понять, как реализовать это средствами языка SQL в одном единственном запросе!!! Вот в чем загвоздка! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 17:52:10 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
highlightswear, Не переживайте, статья Bill of material на википедии до сих пор не имеет русской версии, ниасилили. Теоретически подсчет количества поставщиков изделия даст искомый результат: вывести номер где их = 1. Но практически это значит что изделие должно быть заведомо "укомлектовано" в бд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 18:31:45 |
|
||
|
Необходима помощь с запросом на выборку
|
|||
|---|---|---|---|
|
#18+
alex564657498765453если ставить задачу именно как понял акина Я её понял правильно. А вот ТС - нет. Его подход не выдаст изделия, для которых вообще не требуется никаких деталей, хотя и они соответствуют поставленному условию. Обычная ловушка для студента. highlightswearкак реализовать это средствами языка SQL в одном единственном запросе Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2015, 18:48:33 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1833669]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
78ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 397ms |

| 0 / 0 |
