我有两张表,假设表1有两列,短名称和美国全名,另一张表只有短名称。
我想编写一个MySQL查询来更新表2中所有短名称,表1中的全名与表1的短名称相匹配
Table 1 Table 2 after query I want Table 2
C1 C2 C6 C6
NY New York NY New York
NJ New Jersey NJ New Jersey
答案 0 :(得分:1)
假设表2的STATE字段足够宽以支持完整的州名称,并且您希望用长状态名称覆盖短状态名称。在MySQL 5.0上,我认为UPDATE JOIN语句应该更像这样写:
UPDATE Table2 INNER JOIN Table1 on Table2.state=Table1.state
SET Table2.state=Table1.Full_name
我认为这个链接有最明确的答案 http://blog.ookamikun.com/2008/03/mysql-update-with-join.html