簡體   English   中英

如何將 sql 服務器存儲過程數據插入到新表中?

[英]how can insert sql server stored procedure data to the new table?

我有以下 sql 服務器存儲過程

SELECT
APO_Order_Id as Purchase_Order_Number,
CompanyID as Company_ID,
p.PJM_UserDefinedProjID as Project_ID,
case m.APO_Use_Alt_Address
end as Project_Site_Address, p.PJM_StartDate as Site_StartDate,
s.CNT_ClientName as Creditor,s.CNT_ABN as Creditor_ABN,s.CNT_UID as Creditor_Id,s.CNT_CreditorType as Creditor_Type, m.APO_Description as Purchase_Order_Description, isnull(d.Order_Amount,0) as Order_Total
FROM
Account_APOrderMaster m
left join
(
SELECT
APOD_Master_Id, APOD_Project_Id, sum(APOD_Total_Amount) as Order_Amount
FROM
Account_APOrderDetail
group by
APOD_Master_Id, APOD_Project_Id
) d on m.Ref_Code = d.APOD_Master_Id
left join Client_Name s on m.APO_Supplier_ID = s.Ref_Code
left join Project_Master p on d.APOD_Project_Id = p.ref_code
left join Client_Name pm on m.APO_ProjectManagerId = pm.Ref_Code
WHERE
apo_order_id = 00122975;

現在我需要將 CompanyId 的數據值插入到表“InvoiceMaster”中。 如何將 CompanyID 插入表中?

如果您有權訪問更改存儲過程,則可以在過程中編寫查詢頂部的插入命令

INSERT INTO InvoiceMaster(Name of your column)
SELECT
CompanyID as Company_ID
FROM
Account_APOrderMaster m
left join
(
SELECT
APOD_Master_Id, APOD_Project_Id, sum(APOD_Total_Amount) as Order_Amount
FROM
Account_APOrderDetail
group by
APOD_Master_Id, APOD_Project_Id
) d on m.Ref_Code = d.APOD_Master_Id
left join Client_Name s on m.APO_Supplier_ID = s.Ref_Code
left join Project_Master p on d.APOD_Project_Id = p.ref_code
left join Client_Name pm on m.APO_ProjectManagerId = pm.Ref_Code
WHERE
apo_order_id = 00122975;

如果您無法訪問存儲過程代碼,最好編寫 function 來解決問題。

如果你不能這樣做,你應該在 sql 服務器中使用 Ad Hoc Distributed Queries 選項在臨時表中插入存儲過程的 output

或此鏈接用於解決您的問題將存儲過程 output 插入臨時表

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM