В базе данных, с которой я работаю, в таблице есть поле с типом данных varchar (10). Поле может быть нулевым и не обязательно должно содержать целые числа, но в большинстве случаев оно есть. Я сравниваю значение этого поля в моем предложении WHERE для каждой итерации в моем запросе с целочисленным значением. По крайней мере одно число должно существовать справа от десятичного разряда, и может быть до 2 десятичных разрядов, но большую часть времени будет 1. 0,00 может соответствовать, если сравнивать с 0, но 0 не будет соответствовать, потому что это не после него нет десятичного числа. Какую формулу безопаснее всего использовать, чтобы я учитывал только ненулевые двойные значения?
Предположим, у меня есть следующие значения в моей таблице:
NULL
2,49
2.0
2
2.1
2,4
Мне бы хотелось, чтобы эти значения считались истинными в этом выражении:
2,49
2.0
2.1
2,4
Вот начало .. Я не фигурировал ни в NULL, ни в десятичной ситуации ..
AND CONVERT (INT, fieldname.sortorder) = 2