diff --git a/src/Util/Query.php b/src/Util/Query.php index 203223cd0..4e02822fb 100644 --- a/src/Util/Query.php +++ b/src/Util/Query.php @@ -174,17 +174,25 @@ class Query $real_value = trim(str_replace(['<', '>'], ['<', '>'], $value)); $more = starts_with($real_value, '>=') || starts_with($real_value, '> =') || starts_with($real_value, '>'); $minus = starts_with($real_value, '<=') || starts_with($real_value, '< =') || starts_with($real_value, '<'); + $equal = starts_with($real_value, '='); - if ($minus || $more) { + if ($minus || $more || $equal) { $sign = str_contains($real_value, '=') ? '=' : ''; if ($more) { $sign = '>'.$sign; - } else { + } elseif ($minus) { $sign = '<'.$sign; + } else { + $sign = '='; } $value = trim(str_replace(['<', '=', '>'], '', $value)); - $search_filters[] = 'CAST('.$search_query.' AS UNSIGNED) '.$sign.' '.prepare($value); + + if ($more || $minus){ + $search_filters[] = 'CAST('.$search_query.' AS UNSIGNED) '.$sign.' '.prepare($value); + } else { + $search_filters[] = $search_query.' = '.prepare($value); + } } else { $search_filters[] = $search_query.' LIKE '.prepare('%'.$value.'%'); }