Предположим, у меня есть таблица с именем 'PRODUCTS'
, и мне нужно обновить эту таблицу, когда продажа завершена. Есть ли способ объединить все обновления в один оператор SQL?Обновление нескольких строк в таблице в одной команде SQL
В настоящее время у меня есть что-то вроде:
UPDATE PRODUCT
SET PROD_Q=PROD_Q - 1
WHERE PROD_CODE='A'
UPDATE PRODUCT
SET PROD_Q=PROD_Q - 1
WHERE PROD_CODE='B'
...
не существует более эффективный способ сделать это?
Мммм .. . 'update product set prod_q = prod_q - 1 где prod_code в ('A', 'B', 'C');' (или что-то еще)? – 2013-04-01 16:37:52
@sgeddes дал вам правильный ответ, если вы продаете один из каждого продукта. Однако, если вы продаете 1 из A и 2 из B, отдельные запросы, вероятно, будут наилучшим выбором. –