Возможно ли создать запрос вложенного цикла в Access DB, который обновит третью таблицу?Доступ к циклу db - для каждой записи в одной таблице создать массив записей в другой таблице
У меня есть мастер (заголовок) таблицы:
------------------------
masters
------------------------
num | modality | cost |
------------------------
01 | thing | 23.00 |
02 | thing | 42.00 |
03 | thing | 56.00 |
04 | apple | 11.00 |
05 | apple | 17.00 |
и временная таблица, содержащие данные детали, что мне нужно, чтобы создать третью (фактическую) деталь таблицы, которая будет ключ прочь мастера стол
вот образец таблицы деталей temp.
----------------------------------
temps
----------------------------------
modelnumber | modality | priceEa |
----------------------------------
| 123 | thing | 1.00 |
| 234 | apple | 2.00 |
| 345 | apple | 3.00 |
| 456 | apple | 4.00 |
| 567 | thing | 5.00 |
В принципе, мне нужно перебрать каждую запись в мастеров таблицы.
Внешний контур:
Для каждой записи в таблице мастеров, возьмите модальности.
Внутренний контур:
Тогда для каждой записи в таблице Temps, где соответствовали условиям, создать запись в таблице данные (и в этом процессе, сделать некоторые расчеты, основанные на temps.priceEa и мастеров .Стоимость).
Это должно создать (количество мастеров * temps) новых записей в таблице сведений для каждой записи в таблице мастеров.
деталей таблицы, должны в конечном итоге выглядит как
----------------------------------------------------------
details
----------------------------------------------------------
num | modelnumber | modality | priceEa | adjustedCost |
----------------------------------------------------------
| 01 | 123 | thing | 1.00 | (do calc here)
| 01 | 567 | thing | 5.00 | (do calc here)
| 02 | 123 | thing | 1.00 | (do calc here)
| 02 | 567 | thing | 5.00 | (do calc here)
| 03 | 123 | thing | 1.00 | (do calc here)
| 03 | 567 | thing | 5.00 | (do calc here)
| 04 | 234 | apple | 2.00 | (do calc here)
| 04 | 345 | apple | 3.00 | (do calc here)
| 04 | 456 | apple | 4.00 | (do calc here)
| 05 | 234 | apple | 2.00 | (do calc here)
| 05 | 345 | apple | 3.00 | (do calc here)
| 05 | 456 | apple | 4.00 | (do calc here)
...etc
Я думаю, что вы didz его! Не смешно, как иногда sql выполняет циклические обновления/вставки, не выглядя на самом деле так, как будто это будет делать ... это заставляет мой мозг думать о проблеме по-другому. Спасибо. – m42
Erm, SQL не выполняет циклов концептуально. Возможно, это поможет, если вы подумаете с точки зрения обновления SQL/вставки всех строк, затронутых строк, сразу. – onedaywhen