SQL帮助-此查询有什么问题?

SQL帮助-此查询有什么问题?,sql,sql-server,Sql,Sql Server,我正在使用SSMS-我在这个查询中做错了什么?错误消息说 INSERT语句的select列表包含的项目多于 插入列表。SELECT值的数量必须与 插入列 但我就是没看到。请帮忙 INSERT INTO newtable (code, [Description], PACV21, CMSV22, CMSV23, RxV05, PACE_PYMNT, CMS_PYMNT, CMSV22_PYMNT, CMSV23_PYMNT, Rx_PYMNT, 2019 as DatasetYear) SELEC

我正在使用SSMS-我在这个查询中做错了什么?错误消息说

INSERT语句的select列表包含的项目多于 插入列表。SELECT值的数量必须与 插入列

但我就是没看到。请帮忙

INSERT INTO newtable (code, [Description], PACV21, CMSV22, CMSV23, RxV05, PACE_PYMNT, CMS_PYMNT, CMSV22_PYMNT, CMSV23_PYMNT, Rx_PYMNT, 2019 as DatasetYear)
SELECT code, [Description], PACV21, CMSV22, null, RxV05, PACE2018PYMNT, CMS2018PYMNT, null, null, Rx2018PYMNT, 2018 as DatasetYear,
     CASE WHEN PAC2018PYMNT = 'Yes' THEN 1 
          WHEN CMS2018PYMNT = 'Yes' THEN 1 
          WHEN Rx2018PYMNT = 'Yes' THEN 1 ELSE 0 END
FROM tableA
    UNION ALL
SELECT code, [Description], PACV21, CMSV22, CMSV23, RxV05, PAC2019PYMNT, null, CMSV22_2019PYMNT, CMSV23_2019PYMNT, Rx2019PYMNT, 2019 as DatasetYear,
    CASE WHEN PAC2019PYMNT = 'Yes' THEN 1
         WHEN CMSV22_2019PYMNT = 'Yes' THEN 1
         WHEN CMSV23_2019PYMNT = 'Yes' THEN 1
         WHEN Rx2019PYMNT = 'Yes' THEN 1 ELSE 0 END
FROM tableB

insert语句有12个值,select语句有13个值。你想把案例陈述放在哪一列?您似乎缺少一列。

计算插入列的数目。有多少对选择列表列进行计数。有多少?@DanialWayne噢,我没意识到一个案例陈述可以算作一个值。我是否只需将case语句添加到INSERT语句中?您需要在“newtable”中添加一列来将值放入,case语句可以保持当前状态。@DanialWayne谢谢!很高兴你找到了答案。请花点时间单击答案左侧的灰色复选标记,将此标记为您接受的答案。它让其他用户知道问题有答案,并奖励回答问题的用户一些信誉积分。