我创建了一个SQL查询,用于合并表中的重复项:
SELECT Min([XNbr]) AS [XNbr], [ZNbr], [Hamster], [Cat], [Cow], [Dog],
[Squirrel], [Bird], [Mouse], [Flower], [Tree], Max([TimeStamp]) AS
[TimeStamp]
FROM dbo.Sunshine
GROUP BY [ZNbr], [Hamster], [Cat], [Cow], [Dog], [Squirrel], [Bird],
[Mouse], [Flower], [Tree]
ORDER BY [XNbr]
我现在想要扩展此查询以将结果传输到我之前创建的目标表中,该表具有上述查询的确切结构(相同的字段和类型)。怎么办?
答案 0 :(得分:0)
将结果暂时存储在表格中。
在sql server中使用'generate scrips'选项并选择创建的表。
Generate script for both schema and data
http://www.c-sharpcorner.com/UploadFile/26b237/generate-database-script-in-sql-server-2012/
生成脚本后,只需更改表名。
或
如果数据库中不存在目标表,那么
SELECT Min([XNbr]) AS [XNbr], [ZNbr], [Hamster], [Cat], [Cow], [Dog], [Squirrel], [Bird], [Mouse], [Flower], [Tree], Max([TimeStamp]) AS [TimeStamp]
into TargetTable
FROM dbo.Sunshine
GROUP BY [ZNbr], [Hamster], [Cat], [Cow], [Dog], [Squirrel], [Bird], [Mouse], [Flower], [Tree]
ORDER BY [XNbr]
生成的表将具有与结果相同的模式。
答案 1 :(得分:0)
您可以使用Insert into Select Syntax。请访问此链接以参考更多内容:https://www.w3schools.com/sql/sql_insert_into_select.asp
答案 2 :(得分:0)
您只需要INSERT INTO
:
INSERT INTO TargetTable (Columns)
SELECT Min([XNbr]) AS [XNbr], [ZNbr], [Hamster], [Cat], [Cow], [Dog],
[Squirrel], [Bird], [Mouse], [Flower], [Tree], Max([TimeStamp]) AS
[TimeStamp]
FROM dbo.Sunshine
GROUP BY [ZNbr], [Hamster], [Cat], [Cow], [Dog], [Squirrel], [Bird],
[Mouse], [Flower], [Tree]
ORDER BY [XNbr]