代码之家  ›  专栏  ›  技术社区  ›  Karl

SQL Server 2008-如何自动删除、创建和输出表?

  •  1
  • Karl  · 技术社区  · 14 年前

    我想在一个SQL Server数据库中建立一个表,它存储一个长而复杂的查询的结果,这个查询几乎需要一个小时的运行时间。运行查询后,其他分析工作将由同事使用Excel透视表完成。

    我不希望将结果输出为文本,并希望将其保存在SQL Server中,然后只设置Excel直接从服务器透视。

    我的问题是,输出并不总是具有完全相同的列,每次手动设置要插入的输出表都会很麻烦。

    有没有一种方法可以根据您选择的数据类型动态创建表?

    例如,如果我想运行:

    SELECT 
      someInt, 
      someVarchar, 
      someDate 
    FROM someTable
    

    并将其插入名为outputtable的表中,该表必须如下所示

    CREATE TABLE OutputTable
    (
      someInt int null
      someVarchar varchar(255) null,
      someDate date null,
    ) ON [primary]
    

    有没有办法让SQL Server查询select语句中的字段,然后自动生成create table脚本?

    谢谢
    卡尔

    1 回复  |  直到 14 年前
        1
  •  2
  •   Will A    14 年前
    SELECT 
      someInt, 
      someVarchar, 
      someDate 
    INTO dbo.OutputTable
    FROM someTable
    

    …不会显式生成创建脚本(至少看不到),但会执行该作业!