Unter der Annahme, dass alle positiven Ganzzahlen <2 Milliarden sind, vermeidet diese Lösung mehrere Abfragen und dynamisches SQL. OPTION (RECOMPILE)
hilft, Parameter-Sniffing zu vereiteln, aber dies ist je nach Größe der Tabelle, Ihren Parametrisierungseinstellungen und Ihrer Einstellung "Für Ad-hoc-Workload optimieren" möglicherweise nicht erforderlich.
WHERE [Amount] BETWEEN
CASE WHEN @operand LIKE '<%' THEN 0
WHEN @operand = '>' THEN @operant + 1
ELSE @operant END
AND
CASE WHEN @operand LIKE '>%' THEN 2147483647
WHEN @operand = '<' THEN @operant - 1
ELSE @operant END
OPTION (RECOMPILE);