I would do this using the IF statement, since setting this logic to WHERE makes it difficult to read later:
DECLARE @match = @CustomerID + '%'
IF ISNUMERIC(@CustomerID) = 1
BEGIN
SELECT * FROM CUSTOMERS WHERE CustomerID LIKE @match
END ELSE BEGIN
SELECT * FROM CUSTOMERS WHERE CustomerNAME LIKE @match
END
:
, CustomerID INT. , ( @match):
... WHERE CustomerID = Cast(@CustomerID as INT) --if numeric
... WHERE CustomerNAME = @CustomerID + '%' --if not numeric
, - VARCHAR, , "11_blah", LIKE plus