mysql - SQL 将一个表数据连接到其他表

标签 mysql sql phpmyadmin

因此,我目前正在使用 PHPmyadmin 4.7.7,并且我正在尝试使用我存储在另一个表中的值来更新表 A 的“纬度”列,该表是我从 CSV 导入的。我一直在四处看看人们在做什么,但我似乎无法让它发挥作用。

如果我的想法是正确的,我需要执行以下操作:

UPDATE q
SET q.Latitude = a.Latitude
FROM geodata q
INNER JOIN geotemp a
ON q.Latitude = a.Latitude
WHERE q.gridref = a.gridref;

但这给了我以下错误:

#1064 - You have an error in your SQL syntax; check the manual that 
corresponds to your MySQL server version for the right syntax to use 
near 'FROM
geodata q
INNER JOIN geotemp a ON q.Latitude = a.Latitude
WHERE
q' at line 5

我已经查看了内部连接的语法,但看不到我输入的内容有问题,如果我去掉 q 和 a 并使用“geodata”和“geotemp”,它仍然会发生任何建议?

我在这里期望的结果是地理数据在“gridref”列匹配的现有记录上具有 geotemps 纬度数据。

谢谢

最佳答案

在 MySQL 的更新连接语法中,SET 子句紧跟在连接之后,而不是在 UPDATE 子句之后。

UPDATE q
FROM geodata q
INNER JOIN geotemp a
    ON q.Latitude = a.Latitude
SET q.Latitude = a.Latitude
WHERE q.gridref = a.gridref;

关于mysql - SQL 将一个表数据连接到其他表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49858610/

相关文章:

sql - 每年返回前 10 名

mysql - 使用不同的值集更新多个(不是全部)行 - MySQL

mysql - 可以将 phpMyAdmin "internal relations"配置为在一列上进行查找并从另一列插入值吗?

php - fatal error : Call to a member function fetch_array() on a non-object

SQL:选择每个 page_id 只出现一次的 string_id

php - session_start() : Failed to initialize storage module: memcache (path:/var/lib/php5) in/usr/share/phpmyadmin/libraries/session. inc.php 第 81 行

php - 将 MYSQL 数据库连接到 Public_HTML PHP

Mysql在多行中选择相同的信息

mysql - node-mysql 的 queryFormat 如何影响连接?

php mysql 事务回滚疑惑