sqlsql-serversql-server-2008

How to create table using select query in SQL Server?


I try to make 50-100 tables using SYS queries

SELECT windows_release, windows_service_pack_level, 
       windows_sku, os_language_version
FROM sys.dm_os_windows_info OPTION (RECOMPILE);     -- DEĞİŞİRSE INSERT ETSIN AYNI ISE DEĞİŞMESİN

-- Gives you major OS version, Service Pack, Edition, and language info for the operating system

-- SQL Server Services information (SQL Server 2008 R2 SP1 or greater)
SELECT servicename, startup_type_desc, status_desc, 
last_startup_time, service_account, is_clustered, cluster_nodename
FROM sys.dm_server_services OPTION (RECOMPILE);


-- Hardware information from SQL Server 2008 
-- (Cannot distinguish between HT and multi-core)
SELECT cpu_count AS [Logical CPU Count], hyperthread_ratio AS [Hyperthread Ratio],
cpu_count/hyperthread_ratio AS [Physical CPU Count], 
physical_memory_in_bytes/1048576 AS [Physical Memory (MB)], 
sqlserver_start_time --, affinity_type_desc -- (affinity_type_desc is only in 2008 R2)
FROM sys.dm_os_sys_info OPTION (RECOMPILE);

How to create table from SYS tables queries result?


Solution

  • An example statement that uses a sub-select :

    select * into MyNewTable
    from
    (
    select 
      * 
    from 
    [SomeOtherTablename]
    where 
      EventStartDatetime >= '01/JAN/2018' 
    ) mysourcedata
    ;
    

    note that the sub query must be given a name .. any name .. e.g. above example gives the subquery a name of mysourcedata. Without this a syntax error is issued in SQL*server 2012.

    The database should reply with a message like: (9999 row(s) affected)