我在这里需要一些帮助。我正在使用 MySQL 生成一些报告。我创建的列之一称为 TOTALSUM,它是由使用 CASE 子句的操作创建的。当我尝试使用 ORDER BY 时,它接受这个 TOTALSUM,但如果我将它包含在 IF os CASE 子句中,它就不再接受了。
SUM(CASE WHEN COL1 = 01 THEN COL2 ELSE 0 END) + SUM(CASE WHEN COL1 = 03 THEN -COL2 ELSE 0 END) AS TOTALSUM,
如果我做这样的事情,它的工作原理:
ORDER BY TOTALSUM
但如果我这样做,它不起作用,并给出以下错误:#42S22Reference 'TOTALSUM' not supported (reference to group function)
ORDER BY IF(:INPUTVALUE = "X",TOTALSUM,ITEMCODE)
有没有办法使这项工作?