0

在我的模型中,我有两个节点 ACCOUNT 和 WARNING。ACCOUNT 可以有零到多个警告。

ACCOUNT 节点有多个列,其中 ACCOUNTNUMBER 作为唯一列。

WARNING 节点具有 WARNINGCODE、WARNINGDESCRIPTION 和 EXPIRATIONDATE。我还创建了一个边缘表 HAS_A_WARNING,除了通常的列之外,我还有 ExpirtionDate。

我有一个临时表,其中包含 ACCOUNTNUMBER、WARNINGCODE、WARNINGCODEDESCRIPTION、EXPIRATIONDATE。当我运行以下语句时,出现错误:

Msg 116, Level 16, State 1, Line 17 当子查询没有用 EXISTS 引入时,只能在选择列表中指定一个表达式。消息 213,级别 16,状态 1,行 2 列名称或提供的值的数量与表定义不匹配。

INSERT INTO [dbo].[HAS_A_WARNING] 
values
(

 (SELECT
   ac.$node_id,
   w.$node_id,
   acw.ExpirationDate

 FROM dbo.Account ac
 join Stage.AccountWarning acw
 on acw.AccountNumber = ac.ACCOUNTNUMBER
 join dbo.Warning w
 on w.WarningCode = acw.WarinngCode)

)
4

0 回答 0