mySQL报告仅显示负面结果

mySQL报告仅显示负面结果,mysql,sql,Mysql,Sql,我正在运行下面的mySQL报告,但只希望方差显示为负值。我曾尝试在where子句中设置一个复选框,但由于差异是动态创建的,因此似乎不可能。我也尝试过使用having,但它出错了。我假设这是我刚刚错过的简单的事情。请帮忙 SELECT GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.PUBLISHER SEPARATOR '\n') AS Publisher, GROUP_CONCAT(DISTINC

我正在运行下面的mySQL报告,但只希望方差显示为负值。我曾尝试在where子句中设置一个复选框,但由于差异是动态创建的,因此似乎不可能。我也尝试过使用having,但它出错了。我假设这是我刚刚错过的简单的事情。请帮忙

SELECT GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.PUBLISHER SEPARATOR '\n') 
             AS Publisher, 
       GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.NAME SEPARATOR '\n') 
             AS 'Product',
       GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.MAJOR_VERSION SEPARATOR '\n') 
             AS 'Version',
       GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.CATEGORY SEPARATOR '\n') 
             AS 'Category',
       SUM(DISTINCT FIELD_1) AS 'Licenses',
       GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.INSTALLED_ON SEPARATOR '\n') 
             AS 'Installed',
       SUM(DISTINCT FIELD_1) - GROUP_CONCAT(DISTINCT SAM_VIEW_DISCOVERED_SOFTWARE.INSTALLED_ON     SEPARATOR '\n') 
             AS 'Variance'
FROM SAM_VIEW_DISCOVERED_SOFTWARE 
  LEFT JOIN SAM_VIEW_MACHINE_DISCOVERED_SOFTWARE 
            ON SAM_VIEW_DISCOVERED_SOFTWARE.ID = SAM_VIEW_MACHINE_DISCOVERED_SOFTWARE.ID
  LEFT JOIN MACHINE 
            ON MACHINE.ID = SAM_VIEW_MACHINE_DISCOVERED_SOFTWARE.MACHINE_ID 
  LEFT JOIN ASSET_CATALOG_ASSOCIATION 
            ON ASSET_CATALOG_ASSOCIATION.ASSOCIATED_CATALOG_ID = SAM_VIEW_DISCOVERED_SOFTWARE.ID 
  LEFT JOIN ASSET 
            ON ASSET.ID = ASSET_CATALOG_ASSOCIATION.ASSET_ID 
  LEFT JOIN ASSET_DATA_7 
            ON ASSET_DATA_7.ID = ASSET.ASSET_DATA_ID 
  LEFT JOIN ASSET_FIELD_DEFINITION 
            ON ASSET_FIELD_DEFINITION.ID = ASSET_CATALOG_ASSOCIATION.ASSET_FIELD_ID
WHERE FIELD_1 > 0 
GROUP BY SAM_VIEW_DISCOVERED_SOFTWARE.ID 
ORDER BY PUBLISHER, CATEGORY

将其更改为HAVING,它将在GROUP BYWHER之后出现。您放置HAVING子句的原因是什么?此查询肯定需要表名别名!SUMDISTINCT字段\u 1-组\u CONCATDISTINCT SAM\u视图\u发现的\u软件安装在分隔符\n上应该做什么?SUM返回一个整数,-是减法运算符,GROUP_CONCAT返回一个似乎是datetime字段的varchar。15-“2015-01-01 00:00:00\n2014-12-01 00:00:00”就我所知不是有效的操作。