【发布时间】:2020-03-01 13:04:48
【问题描述】:
我正在尝试使用条件和连接从表复制到另一个表,但当我创建它时出现错误。
INSERT INTO [ax].[WaitingKitchenStatus]
(
[TRANSACTIONID]--1
, [LineNote]--2
, [Item]--3
, [CreationDate]--4
, [CreationTime]--5
, [active]--6
,[Gruop]--7
)
SELECT ab.COMMENT
,[ax].[ECORESPRODUCTTRANSLATION].[NAME]
, ab.[ITEMID]
FROM ax.RetailTransactionSalesTrans ab
inner join [ax].[INVENTTABLE] on ab.[ITEMID] =[ax].[INVENTTABLE].[ITEMID]
inner join [ax].[ECORESPRODUCTTRANSLATION] on [ax].[INVENTTABLE].PRODUCT =[ax].[ECORESPRODUCTTRANSLATION].[PRODUCT]
LEFT JOIN ax.[WaitingKitchenStatus] a ON
a.[TRANSACTIONID]=ab.COMMENT--1
and a.[LineNote]=[ax].[ECORESPRODUCTTRANSLATION].[NAME]--2
and a.[Item]=ab.[ITEMID]--3
and a.[CreationDate]=GETDATE()--4
and a.[CreationTime]= CONVERT(time, GETDATE())--5
and a.active= 1--6
and a.Gruop=''--7
where ab.TRANSACTIONSTATUS !=1
and ab.RECEIPTID !=''
and ab.COMMENT !=''
and NOT EXISTS(select * from ax.[WaitingKitchenStatus] where active= 1 and [TRANSACTIONID]=ab.COMMENT)
我收到了这个错误
消息 120,第 15 级,状态 1,第 1 行
INSERT 语句的选择列表包含的项目少于插入列表。 SELECT 值的数量必须与 INSERT 列的数量相匹配。
有人知道如何解决这个问题吗?
【问题讨论】:
-
错误似乎很明显。您的
insert需要 7 列,但您只提供 3 列。示例数据、所需结果和逻辑解释将帮助其他人了解您实际尝试做什么。 -
感谢重播,其他表不需要从其他表复制
标签: sql sql-server select sql-insert sql-server-2016