【问题标题】:How to Replace and Update Data From One Table to Another Table in MySQL如何在 MySQL 中将数据从一个表替换和更新到另一个表
【发布时间】:2014-02-10 19:25:26
【问题描述】:

我正在使用 PHP、MySQL。我有两张桌子

1.类别

cat_id   cat_name

1        cars
2        mobile
3        computers
4        radios

2.帖子

id       title     body    cat_id

1        title1    txt1    cars
2        title2    txt2    mobiles
3        title3    txt3    mobiles 
4        title4    txt4    radios

我想更新帖子表,用类别表替换 cat_id 值,并希望得到以下输出

id       title     body    cat_id

1        title1    txt1    1
2        title2    txt2    2
3        title3    txt3    2
4        title4    txt4    4

是否有任何 SQL 语句可以一次性做到这一点?

【问题讨论】:

标签: mysql sql database


【解决方案1】:

下面是一个可以解决问题的 SQL 查询:

UPDATE posts JOIN categories ON posts.cat_id = categories.cat_name SET posts.cat_id = categories.cat_id

【讨论】:

  • 非常感谢。效果很好。
【解决方案2】:

试试

UPDATE post p JOIN categories c ON p.cat_id=c.cat_name SET p.cat_id=c.cat_id

【讨论】:

    【解决方案3】:

    使用以下查询。

    将帖子更新为 JOIN 类别为 b ON a.cat_id = b.cat_name SET a.cat_id = b.cat_id

    【讨论】:

      猜你喜欢
      • 2023-04-07
      • 2011-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      • 2011-11-01
      • 1970-01-01
      相关资源
      最近更新 更多