我在Excel工作表中有两列数据。一个是id_upload
,另一个是id_work
。如何更新作品表,以便正确的id_work
将正确的值更新到id_upload
列中?
工作表中有23列,因此我需要具体更新id_upload
列,并且需要获取正确的行(通过id_work
)。
以下是更新数据的示例:
id_upload id_work 15 331 16 370 17 689 18 690 19 765
目前,工作表在id_upload
字段中没有任何值。我需要进行80行更新,而不是手动执行此操作:)。
答案 0 :(得分:1)
不要使用单个查询。那只是在惹麻烦。使用Excel创建多个查询并不困难。
由于您忽略了为表提供实际架构,我假设名称为smf_works_works
,id_work
是主键且唯一键,并且Excel中的id_upload应分配给id_upload
的{{1}}字段。我还假设所有字段都是整数或数字字段。
让Excel中的A列为id_upload。让Excel中的B列为id_work。让第1行成为列标题,第2行和第2行是数据。
在Excel的C列中,输入以下公式:
smf_works_works
现在将C列填入80行。现在选择该列,并将其粘贴到文本编辑器中并验证它是否正确。然后将其粘贴到MySQL Workbench或首选查询分析器中,并运行第一行。使用=CONCATENATE("INSERT INTO smf_works_works (id_work, id_upload) VALUES (",B2,",",A2,") ON DUPLICATE KEY UPDATE id_upload = ",A2,";")
语句验证数据是否正确。现在运行剩余的79行。