diff options
Diffstat (limited to 'modules-available/statistics/inc/hardwarequerycolumn.inc.php')
-rw-r--r-- | modules-available/statistics/inc/hardwarequerycolumn.inc.php | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/modules-available/statistics/inc/hardwarequerycolumn.inc.php b/modules-available/statistics/inc/hardwarequerycolumn.inc.php index d073530b..5e16bcd9 100644 --- a/modules-available/statistics/inc/hardwarequerycolumn.inc.php +++ b/modules-available/statistics/inc/hardwarequerycolumn.inc.php @@ -30,9 +30,9 @@ class HardwareQueryColumn /** * Add necessary conditions, joins, columns to final SQL arrays. To be called * from HardwareQuery::buildQuery(). - * @param bool $groupConcat whether to add distinct GROUP_CONCAT to column. + * @param array if column name is in this array, add as distinct GROUP_CONCAT to column. */ - public function generate(array &$joins, array &$columns, array &$params, bool $groupConcat) + public function generate(array &$joins, array &$columns, array &$params, array $groupConcat = []) { if ($this->global) { $srcTable = 'shw'; @@ -53,7 +53,7 @@ class HardwareQueryColumn // INNER JOIN, so the result will be empty if the condition doesn't match. $type = count($this->conditions) === 1 ? 'LEFT' : 'INNER'; $joins[] = "$type JOIN $table $tid ON (" . implode(' AND ', $this->conditions) . ")"; - if ($groupConcat) { + if (!in_array($this->alias, $groupConcat)) { $columns[] = "Group_Concat(DISTINCT $tid.`value` SEPARATOR ', ') AS `{$this->alias}`"; } else { $columns[] = "$tid.`value` AS `{$this->alias}`"; |