gpt4 book ai didi

mysql - 对具有不同列数/名称的表组合多个 select * 查询以导出到不同的数据库

转载 作者:行者123 更新时间:2023-12-01 10:31:54 26 4
gpt4 key购买 nike

我有多个表,其中包含多个列和字段名称。我想从这些有特定条件的表中选择 * 数据(然后将数据插入到不同的数据库中)。例如,如果我分别运行下面的查询,每个查询都会返回不同的行数,其中列数和字段名称完全不同。当然,我可以将以下查询的结果分别导出到三个不同的文件中,然后将它们插入到不同的数据库中,但我的目标是将这些结果组合起来,以便可以将数据导出到一个文件中。

Select * From table1 Where id>=500;
Select * From table2 Where id>=200;
Select * From table3 Where id>=1500;

请注意 Union all 在这种情况下不起作用,MySQL 表示 #1222 - The used SELECT statements have a different number of columns

如果你能帮助解决这个问题,你能告诉我吗?

最佳答案

我认为你走错了路,如果你引入一个工会,那么你将在导入它时遇到问题。而是尝试合并文件,或将三个表分别导出到一个文件中,例如使用工具 MYSQLDUMP 像这样:

mysqldump -u root -pyour_password your_database table1 >> /tmp/mysql_dump.sql
mysqldump -u root -pyour_password your_database table2 >> /tmp/mysql_dump.sql
mysqldump -u root -pyour_password your_database table3 >> /tmp/mysql_dump.sql

编辑:
你说你需要一个 where 条件 - 这也是可能的,就像这样:
mysqldump -u root -pyour_password --where="id>=500" your_database table1 >> /tmp/mysql_dump.sql

关于mysql - 对具有不同列数/名称的表组合多个 select * 查询以导出到不同的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23296953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com