SQL如何在临时表中使用聚合函数时选择两列

时间:2013-10-21 12:09:19

标签: sql count

您好我创建了一个包含2列的临时表,我想根据分组和聚合函数填充列

insert into #temp (TagName,TagIdentifier)
select Tagname ,
    (case when charindex(':',TagClassDescription)> 0 
       then substring(TagClassDescription,1,(charindex(':',TagClassDescription)-1)) 
       end) as TagIdentifier 
from EXEC_REP_TransposedTagAttributes 
group by Tagname having count(tagname)>1 ;

但它会出现以下错误


专栏' EXEC_REP_TransposedTagAttributes.TagClassDescription'在选择列表中无效,因为它不包含在聚合函数或GROUP BY子句中。

我需要临时表中的两个值,并希望根据TagIdentifiers

count () >1值放入我的表格中

需要帮助

谢谢

2 个答案:

答案 0 :(得分:1)

尝试使用最后一行

按标记名分组有计数(标记名)> 1,TagClassDescription

答案 1 :(得分:0)

使用子选择,如下所示:

插入#temp(TagName,TagIdentifier)field1,field2 as(SELECT *     FROM TransposedTagAttributes     其中的标记名称    (SELECT标记名     FROM EXEC_REP_TransposedTagAttributes     按标记名分组有计数(标记名)> 1))

相关问题