2012-05-08 5 views
1

Вот сделка. У меня есть таблица T со многими колонками, но две представляющие интерес: gen_ID, ordernumber.
Записи в этой таблице всегда являются группами по 5, причем gen_ID является тем же и ordernumber является пустым.таблица обновлений из другой таблицы без присоединения

Таким образом, в сущности, это выглядит следующим образом:

Gen_ID ordernumber 
233      
233  
233  
233  
233  
234  
234    
234    
234  
234  

Теперь у меня есть запрос Q, что при выполнении рандомизирует число 1, 2, 3, 4 и 5.

I хотите обновить ordernumber со случайными числами Q так это выглядит следующим образом:

Gen_ID ordernumber 
233  3 
233  4 
233  1 
233  2 
233  5 
234  4 
234  5  
234  3   
234  2 
234  1 
Etc... 

Любая идея о том, как это сделать с помощью MS Access 2010 SQL?

Вопрос Udate был бы прекрасен, но я не могу присоединиться к ним, так как у меня нет общего идентификатора.
Любые предложения? Обратите внимание, что я могу запустить этот волшебный запрос, когда в таблице создается набор из 5 записей (мне не нужно это делать, если у меня есть несколько наборов).

ответ

2

Я не думаю, что это может быть достигнуто только SQL и потребуется некоторое количество VB. Мой подход состоял в том, чтобы получить ваши 1 - 5 номеров в произвольном порядке, хранящиеся в «Массив», затем вы можете открыть набор записей на «T» и шаг за шагом по очереди назначать число из вашего массива. Вы также можете зацикливать этот процесс, чтобы начать все, всякий раз, когда он обнаруживает новый Gen_ID в «T» и, таким образом, заполняет всю таблицу за один проход.

+0

Я боюсь, что вы правы. Я хотел избежать использования какой-либо процедуры, но похоже, что это будет похоже на то, что ... не имея возможности присоединиться, нет возможности попасть туда только на SQL. Я просто надеялся, что было волшебное утверждение, что я никогда не слышал там ... Я еще раз проверил позже сегодня на всякий случай, но спасибо за ваш ответ. Мэтт. – user1381066

Смежные вопросы