Quote from this link: >> The following rules govern implicit data type conversions: >> When comparing a character value with a numeric value, Oracle converts the character data to a numeric value. In both your cases there are implicite conversion from character value to number: 1. object_name --> to_number(object_name) 2. '100' --> to_number('100')