Db\DbQuery: add NOT LIKE support

This commit is contained in:
Thomas Gelf 2014-11-16 17:08:50 +01:00
parent 90f1ab06b4
commit 5ea2f33efb
1 changed files with 5 additions and 3 deletions

View File

@ -251,10 +251,12 @@ class DbQuery extends SimpleQuery
if (is_array($expression) && $sign === '=') {
// TODO: Should we support this? Doesn't work for blub*
return $col . ' IN (' . $this->escapeForSql($expression) . ')';
} elseif (strpos($expression, '*') === false) {
return $col . ' ' . $sign . ' ' . $this->escapeForSql($expression);
} else {
} elseif ($sign === '=' && strpos($expression, '*') !== false) {
return $col . ' LIKE ' . $this->escapeForSql($this->escapeWildcards($expression));
} elseif ($sign === '!=' && strpos($expression, '*') !== false) {
return $col . ' NOT LIKE ' . $this->escapeForSql($this->escapeWildcards($expression));
} else {
return $col . ' ' . $sign . ' ' . $this->escapeForSql($expression);
}
}