【问题标题】:MS SQL SELECT INTO table auto generate unique identifier for every rowMS SQL SELECT INTO 表自动为每一行生成唯一标识符
【发布时间】:2013-06-11 04:41:13
【问题描述】:

我尝试使用SELECT INTO 语句在 MS SQL Server 2008 中创建新表。我希望新表的每一行都有自动生成的UNIQUEIDENTIFIER 类型的 ID 作为第一列。

没有 ID 列的代码示例:

SELECT m.sellThru, m.turnover
INTO #tmp_table
FROM mpi m

带有 ID (UNIQUEIDENTIFIER) 列的代码模板,结果我想要:

SELECT ?? as id, m.sellThru, m.turnover
INTO #tmp_table
FROM mpi m

期望的输出是:

==============================================================
| id                                   | sellThru | turnover |
==============================================================
| 6818F861-6E87-490D-AF5B-CA9A8B56212E |   155.25 |   110.25 |
--------------------------------------------------------------
| 1A2E8ED6-76A3-42F9-8A87-27050A2ECDC1 |    64.79 |     4.36 |
--------------------------------------------------------------
| B0F9F127-56BB-4E87-AC33-626BA13F7065 |   213.89 |    45.89 |
==============================================================

有什么想法吗?除了IDENTITY(INT,1,1)ROW_NUMBER() 这不是我想要的。

【问题讨论】:

    标签: sql-server uniqueidentifier auto-generate select-into


    【解决方案1】:

    简单:

    select newID() as ID, * 
    into #temp
    from YourTable
    

    【讨论】:

      猜你喜欢
      • 2012-06-20
      • 1970-01-01
      • 2012-07-19
      • 2017-10-20
      • 1970-01-01
      • 1970-01-01
      • 2015-02-12
      • 2016-05-01
      • 2011-08-06
      相关资源
      最近更新 更多