Magento 数据库价格批量修改涉及到的表有这么几个
catalog_product_entity_decimal
catalog_product_index_price
catalog_product_index_price_idx
catalog_product_flat_1
在价格修改之前我们要先确定catalog_product_entity_decimal表中attribute_id的字段值
假设attribute_id的值为75
整体调价
update catalog_product_entity_decimal set value=value+8 where attribute_id=75;
update catalog_product_index_price set price=price+8 , final_price=final_price+8 , min_price=min_price+8 , max_price=max_price+8;
update catalog_product_index_price_idx SET price=price+8 , final_price=final_price+8 , min_price=min_price+8 , max_price=max_price+8;
区间调价
update catalog_product_entity_decimal set value=value-8 where attribute_id=75 and value between 100 and 200
update catalog_product_index_price set price=price , final_price=final_price-8 , min_price=min_price-8 , max_price=max_price-8 where final_price between 100 and 200
update catalog_product_index_price_idx SET price=price , final_price=final_price-8 , min_price=min_price-8 , max_price=max_price-8 where final_price between 100 and 200
将价格小数点位全部清零
update catalog_product_entity_decimal set value=concat(truncate(value,0),'.00') where attribute_id=75;
update catalog_product_index_price set price=concat(truncate(price,0),'.00'), final_price=concat(truncate(final_price,0),'.00'), min_price=concat(truncate(min_price,0),'.00'), max_price=concat(truncate(max_price,0),'.00');
update catalog_product_index_price_idx SET price=concat(truncate(price,0),'.00'), final_price=concat(truncate(final_price,0),'.00'), min_price=concat(truncate(min_price,0),'.00'), max_price=concat(truncate(max_price,0),'.00');