加入MySQL信息和2个表

时间:2013-10-21 15:13:41

标签: php mysql sql sql-server inner-join

Hello StackOverflow成员,我需要你的帮助才能做到以下几点。

我在MySQL数据库中有两个表:

表: products

  • product_id
  • name
  • long_desc
  • price
  • id_categorie
  • manufacturer
  • images

表: images

  • image_id
  • path
  • id_product

现在我需要将PATH COLUMN的内容从IMAGES TABLE复制到PRODUCTS TABLE BUT 中的PATH COLUMN,其中id_product = product_id。

假设我在PRODUCTS TABLE和IMAGES TABLE中有一些数据。

产品

  • product_id:74
  • name:Product1
  • long_desc:SomeText
  • 价格:100.00
  • id_categorie:3
  • 制造商:Panasonic
  • images: NULL

图片

  • image_id:1
  • 路径:./ images / pacasonic.jpg
  • id_product:74

我需要将PATAGE从IMAGES复制到产品中的IMAGES,其中id_products来自产品的IMAGES = product_id。

问题是我有2500个产品,我没有时间手动完成,所以我需要一些帮助。可以用JOIN或PHP完成吗?需要一些帮助。 =)

由于

3 个答案:

答案 0 :(得分:0)

UPDATE PRODUCTS,IMAGES SET PRODUCTS.images = IMAGES.path WHERE IMAGES.id_products=PRODUCTS.product_ID

应该做的伎俩

答案 1 :(得分:0)

我认为此更新应该有效

UPDATE `products` `p` INNER JOIN `images` `i` ON `i`.`id_product` = `p`.`product_id` SET `p`.`images` = `i`.`path`;

答案 2 :(得分:0)

UPDATE PRODUCTS 
JOIN IMAGES
ON PRODUCTS.PRODUCT_ID= IMAGES.ID_PRODUCT
SET PRODUCTS.IMAGES = IMAGES.PATH