mysql数据对比同步_跨数据库mysql语句同步数据和对比运算

首先,A数据库【需要同步的数据库】A_product数据表【产品基本信息】product_id产品唯一IDprice产品价格A_product_option_value数据表【产品选项】product_id产品唯一IDprice差价quan...

首先,A数据库【需要同步的数据库】

A_product 数据表【产品基本信息】

product_id 产品唯一ID

price 产品价格

A_product_option_value 数据表 【产品选项】

product_id 产品唯一ID

price 差价

quantity 数量

gno 同步产品用的唯一标识 每个产品的每个选项的gno是唯一的

A_product_special 数据表 【用户组价格】

customer_group_id = 3 的 price = 内部价

customer_group_id = 4 的 price = 代理价

customer_group_id = 5 的 price = VIP价

-----------------------------------

B数据库【报价数据】

B_price 数据表

GNO 同步产品用的唯一标识 和上面的gno对应

PRICE 对应零售价

INPRICE 对应 经销商价

PROXYPRICE 对应 代理价

VIPPRICE 对应 VIP价

首先,我从 A_product_option_value 【产品选项】找出gno字段有值的数据,把gno有值的数据中product_id相同的几个数据拿出来,在B_price 查到对应gno的PRICE的值,这几个值中,如果存在0,那么就写入A_product_option_value 这个表中的 quantity 【数量】为0,而且不进行对比和计算差价,把另外的数据对比,最小的数,填写在 A_product 对应的 product_id 的 price 值。其他的和 这个最小的做运算。得到的差价,写入 A_product_option_value 对应的GNO的值!

然后把最小的price对应的 INPRICE、PROXYPRICE 和 VIPPRICE 写入 A_product_special 中 customer_group_id = 3 、=4、=5 对应的price的值。

例如 :

A_product 数据表【产品基本信息】

product_id 、price

10086、1000

A_product_option_value 数据表 【产品选项】

product_id 、price、quantity 、 gno

10086、0、0、ABC

10086、0、10、DEF

10086、50、10、FGH

10086、100、10、JKL

A_product_special 数据表 【用户组价格】

product_id 、customer_group_id 、 price

10086 、3、900

10086、4、950

10086、5、980

--------------------

B_price 数据表

GNO 、PRICE、INPRICE 、PROXYPRICE、VIPPRICE

ABC、 0、 0、 0、 0

DEF、1000、 900、 950 980

GHI 1050 950、 1000、 1030

JKL 1100 1000 1050 1080

情况就是大概这样。我不知道应该怎么写,现在只有两个代码,可是这两个代码缺少把0排除的,也缺少把分组价格也弄过去的。

已解决。

展开


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部