Datetime Informix按小时分组
在Informix中如何使用带有hour的groupby子句 此处的“分组方式”部分给出了一个错误:Datetime Informix按小时分组,datetime,informix,hour,Datetime,Informix,Hour,在Informix中如何使用带有hour的groupby子句 此处的“分组方式”部分给出了一个错误: SELECT cqdr.targetid, cqdr.profileid, ccdr.startdatetime::DATETIME HOUR TO HOUR AS CallHour, Count(cqdr.sessionid), (Sum(cqdr.queuetime) / Count(cqdr.sessionid)),
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;
要按派生列分组,请使用“按顺序位置分组”语法:
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
看起来,虽然可以按表达式排序,甚至可以显示标签(选择列表中的列别名),但不能对“分组依据”执行相同的操作。