У меня есть короткий вопрос: мне нужна команда, чтобы некоторые значения оставались неизменными в запросе на обновление с помощью инструкции iff. Некоторые сведения о моей проблеме: у меня есть запрос на обновление, который довольно длинный с 19 операторами iff. Утверждения Iff выглядят так:уходящие значения, поскольку они
UPDATE 1963
SET ProductCode = IIF(
(ProductCode >= 8410 and ProductCode <= 8421),
18, and so on...
Итак, в основном я обновляю поле в соответствии со значениями в одном и том же поле. Когда я запускаю код Access 2003, вы получаете ошибку «выражение слишком сложное». Поскольку я не могу запустить весь код сразу, я подумал, что я могу разделить код на две части и работать отдельно. Но как только я запускаю первую часть, так как это инструкция iff, значения, которые не указаны в первой части кода, становятся нулевыми. Поэтому я не могу запустить вторую часть кода, так как я не могу указать диапазон кода продукта для второй части (все они становятся нулевыми). Поэтому мне нужно, чтобы неуказанные значения оставались такими же, как и раньше, в первой части , поэтому я могу запустить вторую часть для завершения кода. То есть мне нужно что-то сказать, если (ProductCode> = 8410 и ProductCode < = 8421) установить код продукта = 18, в противном случае не изменять значение. Спасибо заранее.
проблема в том, что я пытаюсь обновить 9000 значений в 19 новых значений. Поэтому я не думаю, что могу использовать предложенный вами подход? – ozlem
Почему бы и нет? Я не думаю, что у вас есть 9000 различных значений для обновления, не так ли? В новой таблице требуется либо одна запись для каждого существующего кода, либо iIff один-к-одному - проблема, диапазон, упомянутый в предыдущем сообщении. – Fionnuala
Извините, я новичок в доступе, поэтому, возможно, я ошибаюсь. В таблице у меня есть 219338 строк, и у меня 9000 значений, поэтому значения повторяются несколько раз. Могу ли я использовать этот метод временной таблицы? – ozlem