sql – 我可以在OUTPUT子句中使用DISTINCT吗?

前端之家收集整理的这篇文章主要介绍了sql – 我可以在OUTPUT子句中使用DISTINCT吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试这样的事情:
INSERT INTO MyTable (
       Col1,Col2 )
OUTPUT DISTINCT -- issue is with DISTINCT
       INSERTED.Col1,@otherParameter
       INTO IdListTable
SELECT ColA,ColB,SUM(ImportantNumber)
FROM MyOtherTable
GROUP BY ColA,ColB

除了sql,我不希望我在OUTPUT子句中使用DISTINCT.我想到的解决方法是为输出创建临时表,然后将INSERT DISTINCT插入到IdListTable中.关于不同解决方法的任何想法?@H_502_5@

解决方法

将IdListTable替换为Output语句中的临时表(或表变量,具体取决于行数).然后使用Select Distinct从临时表中向IdListTable运行第二个Insert语句.
INSERT INTO MyTable (
       Col1,Col2 )
OUTPUT 
       INSERTED.Col1,@otherParameter
       INTO #tempIdListTable
SELECT ColA,ColB

Insert into IdListTable
Select distinct col1,col2 from #tempIdListTable

猜你在找的MsSQL相关文章