2017-09-05 15 views
1

私は棒グラフを描くつもりです。 x軸にはラベルが含まれています。ラベルはmysqlリクエストから生成されます。ラベルもページグラフに収まらないほど多くあります。私はおなじみのラベルのいくつかを一つにまとめるつもりです。私はexistignセットアップがうまくいくと思うが、私はこの問題に合うように私のmysqlクエリを編集したい。複数の結果をmysqlのいくつかの一般的な結果に連結するには?

質問をクリアする例。

これが私の現在のMySQLのクエリで

生成されたデータがある
$query = "SELECT DISTINCT HITYPE, 
      SUM(IF(STATUS = 'OPEN',1,0)) AS OPEN, 
      SUM(IF(STATUS = 'CLOSED',1,0)) AS CLOSED, 
      COUNT(STATUS) AS 'TOTAL' 
      FROM hazardreport WHERE HITYPE IS NOT NULL AND RISKLEVEL='$risklevel' AND DATE(DREPORTED) BETWEEN '$dateone' AND 
      '$datetwo' 
      GROUP BY HITYPE 
      ORDER BY TOTAL DESC"; 

item1, 1, 0, 1 
item1.1 , 3 , 2 , 5 
item2 , 1 , 1 , 2 
item2.2, 5, 1 , 6 
生成されたデータをに組み合わせることができるように、私は、クエリを編集したい

item 1, 4, 2 , 6 
item 2, 6, 2, 8 

これが意味をなされることを願っています。

答えて

0

結果をhitype文字列値の最初の部分でグループ化してみてください。

SELECT HITYPE, 
SUM(IF(STATUS = 'OPEN',1,0)) AS OPEN, 
SUM(IF(STATUS = 'CLOSED',1,0)) AS CLOSED, 
COUNT(STATUS) AS TOTAL 
from (
    select SUBSTRING_INDEX(HITYPE, '.', 1) as HITYPE, status 
    FROM hazardreport WHERE HITYPE IS NOT NULL AND RISKLEVEL='$risklevel' 
    AND DATE(DREPORTED) BETWEEN '$dateone' AND '$datetwo' 
) as results 
GROUP BY HITYPE 
ORDER BY TOTAL DESC 
関連する問題