mysql - 从多个表插入相同的字段(以更有效的方式)

标签 mysql sql sql-server

我希望避免重写下面相同的查询(对于每个唯一的表):

Insert Into dbo.DatabaseNEW (Field1 , Field 2)
Select Field 1, Field 2  FROM OldDatabase.dbo.[Table 1] WHERE DESCRIPTION LIKE 'Something';

Insert Into dbo.DatabaseNEW (Field1 , Field 2)
Select Field 1, Field 2  FROM OldDatabase.dbo.[Table 2] WHERE DESCRIPTION LIKE 'Something';

我尝试按如下方式组合查询,但不起作用:

Insert Into dbo.DatabaseNEW (Field1 , Field 2)
Select Field 1, Field 2  FROM OldDatabase.dbo.[Table 1], OldDatabase.dbo.[Table 2] WHERE DESCRIPTION LIKE 'Something';

有什么帮助吗?抱歉这个菜鸟问题。谢谢!

最佳答案

您可以使用 UNION ALL 运算符

Insert Into dbo.DatabaseNEW (Field1 , Field2)
(
Select Field1, Field2  FROM OldDatabase.dbo.[Table 1] WHERE DESCRIPTION LIKE 'Something'
UNION ALL
Select Field1, Field2  FROM OldDatabase.dbo.[Table 2] WHERE DESCRIPTION LIKE 'Something'
);

关于mysql - 从多个表插入相同的字段(以更有效的方式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19210506/

相关文章:

php - SELECT SUM 数据等级和资源 ID #9 错误 PHP

mysql - 将查询 1 的值传递给查询 2

sql - 当我必须处理列中的值列表时,SQL 中有什么好的做法?

mysql - 无法从导入的 MySQL 数据库获取地理定位结果

sql - 在 SQL Server 中实现审计表的建议?

SQL Server - INSERT 后返回值

sql-server - Azure - 数据库 [NAME] 已达到其大小配额

mysql - 转义字符串应该是 "unescaped"(MySQL、Node.js)吗?

php - 最有效的数据收集方式?

mysql - 将多个列连接到另一个表以返回数字的描述