here's one way to solve the problem posed by soln. number two
and isnull(ColumnOne, '%') like @pSearchArg
to use other operators (=, > etc.) try something like
and ColumnOne = insnull(@pSearchArg, ColumnOne)
the optimiser can still use an index on ColumnOne if there is one