perhaps
myQueryCalculatedField:IIF(ExtractPhoneNum([otherField])="","",ExtractPhoneNum([otherField])
Probably would have to see your query design and/or sql. The field must be a text field otherwise you couldn't have those characters in the values, and the function should return "" if no value is passed so I can't see why your query creates zeros. Unless maybe you're using some other function as a wrapper.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.