【发布时间】:2016-11-21 22:04:09
【问题描述】:
我有一个存储过程,其数据如下所示
现在我想要的是,我想将它的数据插入两个不同的临时表
第一个临时表将包含这些列
Doc_type, Doc_No, No_of_days
第二个临时表将有列
Username, DocType, No_of_days
我试过这样:
CREATE TABLE #table1
(
Doc_type varchar(55),
Doc_No varchar(55),
No_of_days varchar(55),
)
INSERT INTO #table1
但是它会抛出一个错误:
关键字“END”附近的语法不正确。
这是我完整的存储过程:
Alter procedure GET_INWARD_REMINDER_REPORT
AS
BEGIN
Select
U.first_name + ' ' + U.last_name UserName,
TH.User_ID,
TY.Type_desc Document_Type,
RA.mkey Reporting_To,
U.Email AS UserEmail,
RAU.Email AS RA1_Email,
RAU.first_name + ' ' + RAU.last_name RAName,
TH.Doc_No,
DATEDIFF(DAY, TH.LastAction_DateTime, GETDATE()) - DATEDIFF(WK, TH.LastAction_DateTime, GETDATE()) AS No_Of_Days_Doc_Pending
from
inward_doc_tracking_hdr TH
inner join
user_mst U ON TH.User_Id = U.mkey
inner join
emp_mst M ON M.mkey = U.employee_mkey
inner join
type_mst_a TY ON TY.master_mkey = TH.doc_type
inner join
emp_mst RA ON RA.mkey = M.Reporting_To
inner join
user_mst RAU ON RAU.employee_mkey = RA.mkey
where
TH.Status_flag NOT IN (5,14) --- 5 for close, 14 for return
and TH.To_user IS NOT NULL
CREATE TABLE #table1
(
Doc_type varchar(55),
Doc_No varchar(55),
No_of_days varchar(55),
)
INSERT INTO #table1
【问题讨论】:
-
临时表的范围是直到会话,即一旦执行 sp。临时表将不再存在......
-
@sandeeprawat:我知道,但请帮我了解如何插入临时表
-
仍然需要插入数据然后将创建表移到顶部。并插入 \
-
@sandeeprawat:是的,它有效,但是如何检查它的
temp1表记录? -
这就是为什么我说它是无用的,直到你不再使用结果.. 测试做最后选择
标签: sql sql-server stored-procedures sql-server-2005