我创建了一个表,并且正在将另一个表中的行插入其中。但是,其中一些行需要来自其他表的连接。据我所知,这意味着在语句中使用子查询选择语句。问题是子查询只返回一个结果,我可能有很多。我想在不存在记录的情况下返回 -1。这是我正在使用的示例,但它不起作用:
INSERT INTO [BDW_ReportPrototype].[dbo].[CustomerCreditFact]
( [MortgageDimID]
,[LeaseDimID]
,[OREODimID]
,[OfficerTypeDimID] )
SELECT
--[MortgageDimID]
-2
--LeaseDimID
,-2
--OREODimID
,-2
,CASE WHEN OfficerTypeDimID IS NULL THEN -1 ELSE OfficerTypeDimID END
FROM Staging_FDB_LN_CPDM_Daily LCD
LEFT OUTER JOIN ERMA..OfficerTypeDim OTD on OTD.OfficerNum = LCD.OFFICER
FROM dbo.Staging_FDB_LN_CPDM_Daily