mysql - 如何更新 MySQL SET 值,其中某些列内容类似于另一个表列内容

标签 mysql insert-update sql-like

我有一张 table 城市名称表(citytable)

idcity  |   cityname     |  statename  |    codenumber
   1    |   Los Angeles  |   state2    |     ...
   2    |   New York     |   state3    |     ...
   3    |   New Jersey   |   state3    |     ...

代码城市表(codetable)

  id |  city     | codenumber
   1 |  angeles  |   031
   2 |  york     |   064
   3 |  jersey   |   075

如何从“codetable”字段中设置、插入或更新数据“codenumber”到“codenumber”列中,从 citytable WHERE 'city' FROM codetable LIKE '%cityname%' FROM 'citytable'? 感谢您的帮助。

最佳答案

使用更新和连接

UPDATE  cityTable a
        INNER JOIN codeTable b
            ON a.ID = b.ID
SET     a.codeNumber = b.codeNumber

但我怀疑这里 IDAUTO_INCRMENTed 列,如果是的话,

UPDATE  cityTable a
        INNER JOIN codeTable b
            ON a.cityName LIKE CONCAT('%', b.city,'%')
SET     a.codeNumber = b.codeNumber

关于mysql - 如何更新 MySQL SET 值,其中某些列内容类似于另一个表列内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14403415/

相关文章:

android - 当客户端使用Web服务调用服务器中的方法时无法连接MySQL

php join 多个查询结果 laravel

mysql - 如何最大限度地减少手术的处理时间?

mysql - 即使使用索引更新查询也需要时间

mysql - mssql 和 mysql 区分大小写,例如

MySQL - 使用 LIKE 和 Nulls 选择

Mysql触发器: Tried other suggestions but still get Error #1064

mysql - 查询获得第三高分

php - 如何对插入和更新进行单个查询?

SQL 多个 LIKE 语句