SELECT   Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCCont, Articles.ATCClicks, Articles.ATCDate, Articles.ATCSum, 
                Articles.ATCType
FROM      ((Articles INNER JOIN
                BigTypes ON Articles.ATCType = BigTypes.TypeID) LEFT OUTER JOIN
                Comments ON Articles.ATCID = Comments.AtcID)
/*-------开始-------*/
GROUP BY Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCCont, Articles.ATCClicks, Articles.ATCDate, 
                Articles.ATCSum, Articles.ATCType
/*-------结束-------*/其中ATCCont是备注类型。
注释起来的部分我添加之后 ATCCont居然会被自动截断? 谁碰到过这个问题了

解决方案 »

  1.   

    备注类型一般来说是不能group by的。可能是access那前面几位来group by 吧。
      

  2.   

    group by就会自动截断?那我的长文本要怎么办?不用这个类型了? 
    要用聚合函数统计回复条数,不能不用group by啊,有其他办法么?
      

  3.   

    group by 是不会自动截断的,和group by 没有关系,你是的SQL语句有问题,你把你的具体想要做什么说清楚!
      

  4.   

    随便问楼主一个问题 你知道 group by 是做什么的么? 
    GROUP BY Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCCont, Articles.ATCClicks, Articles.ATCDate,  
    Articles.ATCSum, Articles.ATCType在group by 后面要按这么多来分组?
      

  5.   

    假如 SELECT 语句包含至少一个 SQL 聚合函数,则 GROUP BY 字段列表中的字段就可以引用 FROM 子句所列出的任何表中的任何字段,无论 SELECT 语句是否包含该字段。
    Microsoft Access 数据库引擎无法对“Memo”或“OLE Object”字段进行分组。
      

  6.   

    总结一下楼上说的,备注不能进行分组,结果就导致了备注字段被截断?需求很简单,就是通过文章id找到这篇文章,但是文章的评论数需要统计,单独有一张评论表(Comments)。
      

  7.   

    已经确定是group by 导致备注类型字段被截断了。结果我改成了
    SELECT Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCClicks, Articles.ATCDate, Articles.ATCSum,  
      Articles.ATCType,ATCCont,ATCReplys from  (
    SELECT Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCClicks, Articles.ATCDate, Articles.ATCSum,  
      Articles.ATCType,Count(*) as ATCReplys
    FROM ((Articles INNER JOIN
      BigTypes ON Articles.ATCType = BigTypes.TypeID) LEFT OUTER JOIN
      Comments ON Articles.ATCID = Comments.AtcID)GROUP BY Articles.ATCID, Articles.ATAuth, Articles.ATCTitle, Articles.ATCClicks, Articles.ATCDate,  
      Articles.ATCSum, Articles.ATCType) as TempTb , Articles where Articles.ATCID=206 and TempTb.ATCID=Articles.ATCID 
      

  8.   

    我现在的解决方法是把备注字段放到外面去,做子查询连接。不过这样的sql变得很长了。如果没有更好的办法我就散分结贴了。
      

  9.   

    会不会自动截断阁下何不自己去试试?只要满足group by 后面出现备注类型字段就行。
      

  10.   

    当然会截
    Microsoft Access 数据库引擎无法对“Memo”或“OLE Object”字段进行分组。