繁体   English   中英

将数据插入临时表

[英]Insert data into temporary Table

我正在使用SQL Server,并且试图建立一个临时表,其中有一个由当前令人兴奋的表检索的列,并在每行中插入一个日期。

例如我有

select NumberID into #Table0
from Table1
where numcue in [conditions]

在新的Table0中,我具有按特定条件排序的NumberID。 但是我想以完全相同的顺序为每一行引入一个日期。

有没有不用CREATE TABLE或INSERT的方法(我没有权限)

提前致谢

-------版本---(更多信息)

也许我不清楚,长话短说,我在Datawarehouse的TABLE1中有IDNUMBER(10k +行),但是每个IDNUMBER有20个日期。

在Excel中,我有需要为每个IDNUMBER检索的日期,但是我不知道如何直接通过QUERY检索该确切信息。 日期没有标准,只是每个IDNUMBER的随机日期,因此我无法直接对其进行编码。

所以我想做的是将每个IDNUMBER和Excel的日期放在一个临时表中,然后继续查找该信息

希望这有助于进一步解释

在此先感谢您提供所有当前的答案

所以你的意思是这样的?

select NumberID, GETDATE() AS DateColumn into #Table0
from Table1
where numcue in [conditions]

我认为您可以通过使用CTE(公用表表达式)查找ID的行号来实现。 我不确定是否是这种情况,但是我知道您想增加每一行的日期,例如:

 NumberID|Date
      1  |2018-01-01
      3  |2018-01-02
     12  |2018-01-03
     25  |2018-01-04

在这种情况下,我提供了一些使用sys_objects表作为示例的代码:

    DECLARE @FirstDate DATE = '20180101'
    ;WITH CTE
    AS
    (
        SELECT TOP (100) PERCENT object_id, ROW_NUMBER() OVER (ORDER BY object_id ASC) AS RowNumber
            FROM master.sys.objects
            ORDER BY object_id
    )
    SELECT  object_id, DATEADD(dd, RowNumber-1, @FirstDate) AS Date, RowNumber
        FROM CTE;

例 您可以忽略RowNumber列-我刚刚添加内容是为了让您理解它是一个序列。

特别是对于您来说,我认为这段代码应该有效-请记住指定您的初始日期:

    DECLARE @FirstDate DATE = '20180101'
    ;WITH CTE
    AS
    (
        SELECT TOP (100) PERCENT NumberID, ROW_NUMBER() OVER (ORDER BY NumberID ASC) AS RowNumber 
            FROM Table1
            WHERE numcue IN [conditions]
    )
    SELECT NumberID, DATEADD(dd, RowNumber-1, @FirstDate) AS Date
        FROM CTE;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM