1

Informix で group by 句を時間とともにどのように使用しますか?

ここでセクションごとにグループ化すると、エラーが発生します。

  SELECT
     cqdr.targetid, 
     cqdr.profileid, 
     ccdr.startdatetime::DATETIME HOUR TO HOUR AS CallHour,
     Count(cqdr.sessionid), 
     (Sum(cqdr.queuetime) / Count(cqdr.sessionid)), 
     Max(cqdr.queuetime)
   FROM Contactqueuedetail cqdr, Contactcalldetail ccdr, Selected_csqs sc
   WHERE cqdr.sessionid = ccdr.sessionid AND
         cqdr.sessionseqnum = ccdr.sessionseqnum AND
         cqdr.profileid = ccdr.profileid AND
         cqdr.nodeid = ccdr.nodeid AND
         ccdr.startdatetime BETWEEN DATE('12/6/27') AND DATE('12/6/28') AND 
         --cqdr.targettype = l_typecsq AND
         cqdr.targetid = sc.csqrecordid AND
         cqdr.profileid = sc.profileid
   GROUP BY ccdr.startdatetime::DATETIME HOUR TO HOUR, cqdr.targetid, cqdr.profileid;
4

1 に答える 1

2

派生列でグループ化するには、GROUP BY 序数位置構文を使用します。

SELECT cqdr.targetid, 
     cqdr.profileid, 
     ccdr.startdatetime::DATETIME HOUR TO HOUR AS CallHour,
     Count(cqdr.sessionid), 
     (Sum(cqdr.queuetime) / Count(cqdr.sessionid)), 
     Max(cqdr.queuetime)
  FROM ...
  WHERE ...
GROUP BY 1, 2, 3
于 2012-06-30T07:48:06.257 に答える