当前位置: 代码迷 >> Sql Server >> 使用自连接查询后 想count数据 使用groupby提示异常
  详细解决方案

使用自连接查询后 想count数据 使用groupby提示异常

热度:36   发布时间:2016-04-24 10:44:58.0
使用自连接查询后 想count数据 使用groupby提示错误
select first.BaseDataID,first.BaseDataCode as bcode, second.BaseDataID,second.BaseDataName,second.ParentCode from SysBaseData first,SysBaseData second where first.BaseDataCode=second.ParentCode and first.BaseDataID = 12 group by first.BaseDataID

消息 8120,级别 16,状态 1,第 1 行
选择列表中的列 'SysBaseData.BaseDataCode' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。

好像查到group by 不能写表名,这里该如何解决呢?
------解决方案--------------------
查询结果列,和group by  的字段要同样多.
------解决方案--------------------
 GROUP BY 必须有聚合函数像sum count之类的
------解决方案--------------------
SELECT  COUNT(first.BaseDataID) ,
        first.BaseDataID ,
        first.BaseDataCode AS bcode ,
        second.BaseDataID ,
        second.BaseDataName ,
        second.ParentCode
FROM    SysBaseData first ,
        SysBaseData second
WHERE   first.BaseDataCode = second.ParentCode
        AND first.BaseDataID = 12
GROUP BY first.BaseDataID ,
        first.BaseDataCode AS bcode ,
        second.BaseDataID ,
        second.BaseDataName ,
        second.ParentCode
  相关解决方案