Я хотел бы условно присоединить запрос к себе.Условно присоединяется к запросу
Запрос:
SELECT Part, MtlPart, Qty
FROM Mtl
Результат:
Part MtlPart Qty
1 100 1
1 101 2
1 102 2
2 200 1
2 201 1
100 120 1
100 121 1
100 122 1
120 A20 1
120 A21 1
MtlParts также деталей. То, что я хочу сделать, - это присоединить этот запрос к себе, чтобы получить список соединительных частей.
Например:
SELECT *
FROM
(SELECT Part, MtlPart, Qty
FROM Mtl) AS A
INNER JOIN
(SELECT Part, MtlPart, Qty
FROM Mtl) AS B
ON a.MtlPartNum = b.PartNum
WHERE Part = 1
вернуться бы что-то вроде:
a.Part a.MtlPart a.Qty b.Part b.MtlPart b.Qty
1 100 1 100 120 1
1 100 1 100 121 1
1 100 1 100 122 1
1 101 1 NULL NULL NULL
1 102 1 NULL NULL NULL
Я хочу присоединиться этот запрос к себе, пока присоединился запрос не возвращает только аннулирует. В этом примере часть 1 вернет данные до тех пор, пока не достигнет MtlParts A20 и A21, потому что они не указаны как части.
Я, честно говоря, не уверен в наилучшем способе этого. Любая помощь или совет ВЕЛИКОЕ оценили.
То, что вы описываете, - это не то, что вам следует преследовать. Наличие динамического количества столбцов, подобных этому, вызовет проблемы, так как вы в конечном итоге попытаетесь вызвать столбцы, которые не существуют. Я бы сказал, что вы должны решить: 1) Только перейти к X вложенным уровням ИЛИ 2) Определить только, когда часть имеет подпункт и обрабатывает обнаружение подчасти в списке через некоторый код за фильтром для набора данных. – KHeaney
@KHeaney option 1 - это то, чего я пытаюсь достичь, но я изо всех сил пытаюсь написать цикл. Какие-либо предложения? – user2572833