Я пытаюсь подсчитать количество записей в столбце лица, которое находится между 0 и 25000. В наборе данных есть Лицо как символ (20), поэтому мне нужно было преобразовать его в целое число, прежде чем создавать какие-либо логические выражение. Вот мой код ниже:преобразование varchar в integer
SELECT count(*)
FROM tablename
WHERE cast(face AS integer) > 0 and cast(face AS integer) <=25000;
Я получаю сообщение об ошибке, говоря
Конверсия удалось при преобразовании значения VARCHAR «0.0» для типа данных Int.
колонка Face содержит нулевые значения и записи, как «0.0» и «0,0000»
Я посмотрел в Интернете и не нашел ничего полезного о том, как преобразовать VARCHAR в целое. Помогите кому-нибудь?
'Я посмотрел в Интернете и не нашел ничего полезного о том, как конвертировать VARCHAR to integer.' Nope ... – reto
Почему, почему, зачем вы храните целые числа в столбце char (20)? Кроме того, поиск не появился? В самом деле? Я предполагаю, что вы имеете в виду, когда вы проверили [все 508 000 результатов этого поиска] (https://www.google.com/search?q=convert+varchar+to+int+sql+server)? Или даже ближе к дому, [найденные здесь результаты 1043] (http://stackoverflow.com/search?q=convert+varchar+to+int+sql-server)? –
@reto Я бы согласился и предположил, что OP выглядит немного сложнее. – Zane