mysql设置多列作为逗号分隔值的字段

时间:2014-02-11 07:40:13

标签: mysql comma

我的原始查询看起来像这样 -

UPDATE main,category,sub_category
SET main.biz_keyword = (category.category','sub_category.sub_cat_name','main.biz_keyword)

所以结果就像main.biz_keyword='Doctor,General Physician,Physician' 我知道这是错误的查询,但你得到了我想要的想法, 所以我的问题是我可以通过单一查询来做到这一点吗?

3 个答案:

答案 0 :(得分:0)

您可能希望了解使用CONCAT_WS(separator,str1,str2,...)

  

CONCAT_WS()代表Concatenate With Separator,是一个特殊的   形式的CONCAT()。第一个参数是其余部分的分隔符   争论。在字符串之间添加分隔符   级联。

答案 1 :(得分:0)

这是你想要实现的目标吗?

Update TableName
set biz_keyword = category.category + ',' + sub_category.sub_cat_name + ',' + main.biz_keyword

答案 2 :(得分:0)

也许你正在寻找这样的东西?

UPDATE
    main
SET
    biz_keyword = CONCAT_WS(', ',
        (SELECT category FROM category WHERE ... ),
        (SELECT sub_cat_name FROM sub_category WHERE ... ),
        biz_keyword)