[T-SQL] MSSQL 根據已有的表創建新表


Posted by mike-hsieh on 2023-05-18

使用 SELECT INTO 語法創建新表,但是新表不會有唯一鍵。

  1. 最基本的複製創建,無唯一鍵。

    -- 將會創建一個完全相同欄位,資料的資料表
    SELECT * 
    INTO [Users2]
    FROM [Users]
    
  2. 加上流水號,有唯一鍵。

    SELECT 
     PkId = IDENTITY(INT, 1, 1), --  建立 PK 流水號
     [Users].Name,
     [Users].Age,
     [Users].CreateDate
    INTO [Users4]
    FROM [Users]
    
  3. 使用 Join 的來源,產生新表,有唯一鍵。

    SELECT 
     Id = IDENTITY(INT, 1, 1),   --  建立 PK 流水號
     Name = tbl.Name,
     Age = tbl.Age,
     Country = tbl.Country,
     CreateDate = tbl.CreateDate
    INTO [Users3] 
    FROM (
     --  使用 Join 的資料
     SELECT u.Id AS ID, u.Name AS Name, u.Age AS Age, u.CreateDate AS CreateDate, c.Country AS Country
     FROM [Users] u
     INNER JOIN [Customers] c ON u.Id = c.CustomerId
    ) tbl
    

#創建資料表 #複製資料表 #tsql #SQL #MSSQL #select into #CREATE TABLE







Related Posts

萬有引力與四星運動之探討

萬有引力與四星運動之探討

我的gulpfile.js要怎麼撰寫

我的gulpfile.js要怎麼撰寫

[重新理解 C++]  TMP(2): variadic template parameter

[重新理解 C++] TMP(2): variadic template parameter


Comments