我运行以下的总和查询,然后我得到完全相同的答案MySQL函数COUNT/MIN/MAX问题
SQL 1 ::
Select L_PARTKEY,sum(L_LINENUMBER) As A
From lineitem
Inner Join orders On orders.O_ORDERKEY = lineitem.L_ORDERKEY
WHERE O_WEEKDAY='Tuesday'
Group by L_PARTKEY
SQL 2 ::
SELECT sum(IF(orders.O_WEEKDAY='Tuesday',L_LINENUMBER, 0)) As 'Tuesday'
FROM lineitem
INNER JOIN orders ON orders.O_ORDERKEY = lineitem.L_ORDERKEY
GROUP BY lineitem.L_PARTKEY
但是,当我用AVG/COUNT/MIN/MAX功能,而不是SUM运行上面的查询,然后这两个查询给出了不同的输出。
尝试一些交叉检查,就像看到多少以及哪些记录有两个查询,而无需使用聚合函数 – Dharmesh
显示一些样本数据集[* @ *小提琴(http://sqlfiddle.com/)没有这一点,我们可以对你没有帮助,你只能有我们的建议 –