我现在已经处理了几个小时。我有这个问题:
update xcart.xcart_products_lng_en
left join xcart.xcart_products
on xcart.xcart_products.productid = xcart.xcart_products_lng_en.productid
left join xcart.xcart_extra_field_values
on xcart.xcart_extra_field_values.productid = xcart.xcart_products.productid
set `keywords` = CONCAT(product, " ", productcode, " ",value)
where value is not null;`
起初这是我所期望的,但是客户端设置数据库的方式,它有一些我似乎无法弄清楚的问题。
事实证明,拉动VALUE的表是动态生成的,最终看起来像这样。
产品1 |字段ID 1 |产品ISBN
产品1 |字段ID 3 |作者姓名
产品1 |字段ID 2 |货架ID
问题在于,当我创建的查询运行时,它只添加一个字段ID的值,并且进入其他字段ID,无论如何要进行此操作吗?我知道“CONCAT”,我不知道如何利用它,或者在这种情况下使用它是否有意义。
~Traci Wojcik
答案 0 :(得分:1)
您的联接派生了一张桌子。您需要更新现有表。如果你有T1,T2,T3作为表,并且你想根据T1,T2,T3更新T1,那么你写:
update T1
set T1.Field = (select ... from ... where ...)
我希望这会有所帮助。