summaryrefslogtreecommitdiff
path: root/program/include/rcube_mdb2.php
diff options
context:
space:
mode:
Diffstat (limited to 'program/include/rcube_mdb2.php')
-rw-r--r--program/include/rcube_mdb2.php26
1 files changed, 26 insertions, 0 deletions
diff --git a/program/include/rcube_mdb2.php b/program/include/rcube_mdb2.php
index a68d1dd92..02ed17ac2 100644
--- a/program/include/rcube_mdb2.php
+++ b/program/include/rcube_mdb2.php
@@ -600,6 +600,32 @@ class rcube_mdb2
}
}
+ /**
+ * Abstract SQL statement for value concatenation
+ *
+ * @return string SQL statement to be used in query
+ * @access public
+ */
+ function concat(/* col1, col2, ... */)
+ {
+ $func = '';
+ switch($this->db_provider) {
+ case 'mysql':
+ case 'mysqli':
+ $func = 'CONCAT';
+ $delim = ', ';
+ break;
+ case 'mssql':
+ case 'sqlsrv':
+ $delim = ' + ';
+ break;
+ default:
+ $delim = ' || ';
+ }
+
+ return $func . '(' . join($delim, func_get_args()) . ')';
+ }
+
/**
* Encodes non-UTF-8 characters in string/array/object (recursive)