mirror of
https://github.com/espocrm/espocrm.git
synced 2026-07-01 08:26:04 +00:00
COALESCE function, null, true, false
This commit is contained in:
@@ -136,12 +136,14 @@ abstract class Base
|
||||
'FLOOR',
|
||||
'CEIL',
|
||||
'ROUND',
|
||||
'COALESCE',
|
||||
];
|
||||
|
||||
protected $multipleArgumentsFunctionList = [
|
||||
'CONCAT',
|
||||
'TZ',
|
||||
'ROUND',
|
||||
'COALESCE',
|
||||
];
|
||||
|
||||
protected $matchFunctionList = ['MATCH_BOOLEAN', 'MATCH_NATURAL_LANGUAGE', 'MATCH_QUERY_EXPANSION'];
|
||||
@@ -582,6 +584,8 @@ abstract class Base
|
||||
} else if (is_numeric($argument)) {
|
||||
$string = $this->quote($argument);
|
||||
return $string;
|
||||
} else if (in_array(strtoupper($argument), ['NULL', 'TRUE', 'FALSE'])) {
|
||||
return strtoupper($argument);
|
||||
}
|
||||
|
||||
if (strpos($argument, ':')) {
|
||||
|
||||
@@ -593,6 +593,17 @@ class QueryTest extends \PHPUnit\Framework\TestCase
|
||||
$this->assertEquals($expectedSql, $sql);
|
||||
}
|
||||
|
||||
public function testFunction9()
|
||||
{
|
||||
$sql = $this->query->createSelectQuery('Comment', [
|
||||
'select' => ['id', ["COALESCE:(name,FALSE,true,null)", 'value']]
|
||||
]);
|
||||
$expectedSql =
|
||||
"SELECT comment.id AS `id`, COALESCE(comment.name, FALSE, TRUE, NULL) AS `value` FROM `comment` " .
|
||||
"WHERE comment.deleted = '0'";
|
||||
$this->assertEquals($expectedSql, $sql);
|
||||
}
|
||||
|
||||
public function testFunctionTZ1()
|
||||
{
|
||||
$sql = $this->query->createSelectQuery('Comment', [
|
||||
|
||||
Reference in New Issue
Block a user