从tmp数据库中的表插入并更新到另一个数据库中的表

方舟

我目前正在尝试将csv文件中的数据加载到数据库中的表中,插入任何新条目并更新旧条目。该表具有说字段(field1,field2,field3,field4,field5)的列,其中field1作为主键,而csv具有仅包含列的值(field1,field2,field3)。解决这个问题的最佳方法是什么?目前,我正在考虑采用以下方法:

  • 在tmp中创建一个表,例如tmp_table
  • 使用“ LOAD DATA”在tmp_table中加载CSV
  • 使用查询更新旧条目

    UPDATE db.table1 t INNER JOIN tmp.tmp_table s ON (t.field1=s.field1)
    SET t.field1 = s.field1, t.field2 = s.field2, t.field3 = s.field3
    
  • 插入新条目

    INSERT INTO db.table1(field1, field2, field3)
    SELECT t.field1, t.field2, t.field3 
    FROM tmp.tmp_table t 
    LEFT JOIN db.table1 v ON (t.field1=v.field1) 
    WHERE v.field1=NULL
    

关于改进/优化/纠正步骤有何评论?

迈克尔·奥斯特·斯文森(MichaelØrstedSvendsen)

由于您使用的是MySQL,因此建议您使用这种非通用解决方案。

在您的tmp表中包括field4和field5。

创建tmp表后,使用table1中现有记录的值更新field4和field5。

UPDATE tmp.tmp_table s INNER JOIN db.table1 t ON (t.field1=s.field1)
SET s.field4 = t.field4, s.field5 =t.field5

然后

REPLACE INTO db.table1 VALUES (field1, field2, field3, field4, field5)
SELECT t.field1, t.field2, t.field3, t.field4, t.field5 
FROM tmp.tmp_table t

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从tmp数据库中的表插入并更新到另一个数据库中的表

来自分类Dev

在另一个数据库中重新创建表时,将数据插入/更新到表中

来自分类Dev

SQL更新表使用另一个数据库中的表

来自分类Dev

如何使用另一个数据库表中的值更新表

来自分类Dev

将一个数据库表中的行插入另一个数据库中的两个不同表中

来自分类Dev

从 SQL Server 中的另一个数据库表插入选择

来自分类Dev

将数据库中一个表的值插入到另一个数据库中的另一表

来自分类Dev

从一个数据库表插入到 ANDROID 中的另一个数据库表

来自分类Dev

如何基于一个表与另一个数据库中的同一表更新数据库中的表记录?

来自分类Dev

如何将表从一个数据库更新到另一个?

来自分类Dev

将部分数据库表合并到另一个数据库表中?

来自分类Dev

Laravel:从另一个数据库表中获取数据

来自分类Dev

从一个数据库表插入到另一个

来自分类Dev

从一个数据库表插入到另一个

来自分类Dev

如何从当前数据库CodeIgniter中的另一个数据库创建新表

来自分类Dev

如何从Laravel中的另一个数据库表中检索值?

来自分类Dev

PDO在另一个数据库的表中插入查询不起作用

来自分类Dev

如何使用另一个表中的值更新数据库表

来自分类Dev

Oracle数据库,将数据从一个表更新到另一个表

来自分类Dev

如何使用Python从sqlite中的另一个数据库导入表?

来自分类Dev

如何使用postgres dblink对另一个数据库中的表进行更新?

来自分类Dev

交叉表存在于一个数据库中,而不存在于另一个数据库中

来自分类Dev

mysql 从另一个数据库插入到表中选择

来自分类Dev

编写查询以在一个数据库中的另一个类似数据库中的表中添加缺少的列

来自分类Dev

将数据从一个表复制到另一个数据库中的另一个表

来自分类Dev

从一个表中选择多个列,然后将数据插入到PHP-MySQL中另一个数据库中的另一个表中

来自分类Dev

如何生成一个模型,其表存储在另一个数据库中?

来自分类Dev

使用冗长的IN子句更新到另一个数据库

来自分类Dev

从从 C# MSSQL 中的另一个表中检索的 datagridview 数据插入到数据库

Related 相关文章

  1. 1

    从tmp数据库中的表插入并更新到另一个数据库中的表

  2. 2

    在另一个数据库中重新创建表时,将数据插入/更新到表中

  3. 3

    SQL更新表使用另一个数据库中的表

  4. 4

    如何使用另一个数据库表中的值更新表

  5. 5

    将一个数据库表中的行插入另一个数据库中的两个不同表中

  6. 6

    从 SQL Server 中的另一个数据库表插入选择

  7. 7

    将数据库中一个表的值插入到另一个数据库中的另一表

  8. 8

    从一个数据库表插入到 ANDROID 中的另一个数据库表

  9. 9

    如何基于一个表与另一个数据库中的同一表更新数据库中的表记录?

  10. 10

    如何将表从一个数据库更新到另一个?

  11. 11

    将部分数据库表合并到另一个数据库表中?

  12. 12

    Laravel:从另一个数据库表中获取数据

  13. 13

    从一个数据库表插入到另一个

  14. 14

    从一个数据库表插入到另一个

  15. 15

    如何从当前数据库CodeIgniter中的另一个数据库创建新表

  16. 16

    如何从Laravel中的另一个数据库表中检索值?

  17. 17

    PDO在另一个数据库的表中插入查询不起作用

  18. 18

    如何使用另一个表中的值更新数据库表

  19. 19

    Oracle数据库,将数据从一个表更新到另一个表

  20. 20

    如何使用Python从sqlite中的另一个数据库导入表?

  21. 21

    如何使用postgres dblink对另一个数据库中的表进行更新?

  22. 22

    交叉表存在于一个数据库中,而不存在于另一个数据库中

  23. 23

    mysql 从另一个数据库插入到表中选择

  24. 24

    编写查询以在一个数据库中的另一个类似数据库中的表中添加缺少的列

  25. 25

    将数据从一个表复制到另一个数据库中的另一个表

  26. 26

    从一个表中选择多个列,然后将数据插入到PHP-MySQL中另一个数据库中的另一个表中

  27. 27

    如何生成一个模型,其表存储在另一个数据库中?

  28. 28

    使用冗长的IN子句更新到另一个数据库

  29. 29

    从从 C# MSSQL 中的另一个表中检索的 datagridview 数据插入到数据库

热门标签

归档