gpt4 book ai didi

mysql - 使用 LEFT JOIN 在 MYSql 更新中添加多值列

转载 作者:行者123 更新时间:2023-11-29 14:06:28 26 4
gpt4 key购买 nike

我已经处理这个问题几个小时了。我有这样的疑问:

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”,但我不确定如何使用它,或者在这种情况下使用它是否有意义。

~特蕾西·沃西克

最佳答案

您的联接派生出一个表。您需要更新现有表。例如,如果您有 T1、T2、T3 作为表,并且您想根据 T1、T2、T3 更新 T1,那么您可以编写:

update T1
set T1.Field = (select ... from ... where ...)

我希望这会有所帮助。

关于mysql - 使用 LEFT JOIN 在 MYSql 更新中添加多值列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14280800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com