我有以下查询查找从同一个客户中取消自己的交易(有些交易为负数)。如何获得组成GROUP BY ... HAVING查询的行的ID?
SELECT c, ABS(r) magnitude, SUM(r) total, COUNT(*) num
FROM table
GROUP BY c, magnitude
HAVING num > 1 AND total = 0
ORDER BY total
此查询的结果是客户ID,订单的大小,即取消自己出(零)订单的总和,并且一起加起来零成交的数量。
我该如何去取得组成COUNT(*)
的行ID?
我想结束包含这些行的ID的单列结果集。
第二个查询也可以在Sybase SQL Anywhere上运行,这正是我所处的。但是,它会返回一个空的结果集。如果从总列中的SUM()中移除ABS()函数,它将按需要工作。如果你总结'ABS()','total'不能为零。 – 2009-09-22 14:38:19
我按照上面所述编辑了查询。 – 2009-09-22 14:39:01