Не уверен, что немного выстрелил в это !! : -)
ISNUMERIC возвращает 1, когда входное выражение оценивается как допустимое целое число, число с плавающей запятой, денежный или десятичный тип
Я думаю, что в данном случае он рассматривает "d" как десятичное и, следовательно, считает его числом.
Я думаю, что 5e9 должно быть похожим, так как "e" также используется математически для обозначения показателя степени. У вас нет SQL, чтобы попробовать это прямо сейчас ... но я думаю, что результат 5e9 должен быть 1 по той же причине 1007 *
РЕДАКТИРОВАТЬ: немного больше контекста здесь (результат быстрого поиска в Google !!)