Py学习  »  DATABASE

MySQL更新与加入

aforbes • 3 年前 • 1425 次点击  

我有一个包含联系人详细信息的MySQL表,我需要将“PHONE1”列的重复标记为另一个名为“DUPLICATE”的标记列(忽略第一行,即原始行)。

我发现了一个SQL教程,其中有一个SQL查询示例,几乎完全符合我的要求: https://www.sqlservertutorial.net/sql-server-basics/sql-server-update-join/ .

我修改了教程示例,可以通过以下查询正确地“选择”重复的行:

SELECT t1.ID, t1.`Contact Name`, t1.PHONE1
FROM new_leads_test2 AS t1
INNER JOIN new_leads_test2 AS t2
ON (t1.PHONE1 = t2.PHONE1
AND t1.ID > t2.ID)

这个“SELECT”查询可以100%工作,但是当我试图修改这个查询以实际更新行时(根据教程),我得到了一个SQL语法错误。以下是生成错误的查询:

UPDATE t1
SET t1.duplicate = t2.ID
FROM new_leads_test2 AS t1
INNER JOIN new_leads_test2 AS t2
ON (t1.PHONE1 = t2.PHONE1
AND t1.ID > t2.ID)

这会导致SQL错误:

#1064年的今天,您的SQL语法出现错误;查看与您的MySQL服务器版本对应的手册,以获取正确的语法 从新_引出_test2作为t1
内部连接新的_leads_test2 AS t2
在t1上。PHONE1=t2在3号线

谁能帮我一下吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/133251
 
1425 次点击  
文章 [ 2 ]  |  最新文章 3 年前