MDL-52817 dml: implement driver methods for SQL group concatenation.

This commit is contained in:
Paul Holden
2021-02-19 15:31:00 +00:00
parent a93828a188
commit b2d19cc29f
9 changed files with 226 additions and 0 deletions
+13
View File
@@ -1452,6 +1452,19 @@ class pgsql_native_moodle_database extends moodle_database {
return " $s ";
}
/**
* Return SQL for performing group concatenation on given field/expression
*
* @param string $field
* @param string $separator
* @param string $sort
* @return string
*/
public function sql_group_concat(string $field, string $separator = ', ', string $sort = ''): string {
$fieldsort = $sort ? "ORDER BY {$sort}" : '';
return "STRING_AGG(CAST({$field} AS VARCHAR), '{$separator}' {$fieldsort})";
}
public function sql_regex_supported() {
return true;
}