Данные SQLbase не являются числовыми

У меня есть запрос, который выполняется в Excel, и ему нужно будет отображать данные из базы данных SQLbase, где у меня есть доступ только для чтения. Я не могу изменить базу данных в любом случае. Столбец, по которому мне нужно иметь возможность фильтровать, — это столбец varchar, но его значения — это только числа. Мне нужно иметь возможность фильтровать с помощью between в Excel, поэтому я попытался сделать column + 0, чтобы Excel выбрал его как число. Это работало раньше, но теперь не работает на некоторых числах.

Номер 704977990024 работает, а 991098000265 нет. Со вторым я получаю Data is not numeric.

Это запрос:

SELECT (TABLE1.COLUMN + 0) AS "Artikelnummer"
FROM DB.TABLE TABLE1 
LEFT JOIN DB.OTHERTABLE TABLE2
ON TABLE1.COLUMN = TABLE2.COLUMN

Как я могу убедиться, что я получу его как число в Excel? Если не в запросе, то как в самом Excel? Когда я устанавливаю столбец в number в Excel, он по-прежнему отображается как текст и не будет числовым, если я не попытаюсь изменить ячейку.


person Deep Frozen    schedule 21.12.2012    source источник


Ответы (2)


Наверное, переполняется. Альтернативный способ получить то, что вам нужно, — это дополнить числа ведущими нулями. Это позволит избежать переполнения и позволит вам использовать диапазон. Я не знаю синтаксиса... что-то вроде where Right('000000000000000' + nu, 17) between ....

person ErikE    schedule 21.12.2012
comment
Я нашел PDF-файл с функциями из SQLbase здесь. К сожалению, нет функции дополнить его. Кроме того, когда я пытаюсь сделать только '0000000000' + number, он все еще говорит Data is not numeric. - person Deep Frozen; 21.12.2012

Я не нашел решения этой проблемы, но я нашел ручной обходной путь.

Вы выбираете весь столбец, а вырезаете и вставляете где-то еще. Вы вырезаете его, потому что столбец должен быть пустым при возврате данных. После этого вы выбираете только что созданный столбец и копируете или вырезаете его. Затем вы выбираете столбец, в котором должны быть данные (тот, который вы только что очистили), и нажимаете paste > paste special. Затем вы выбираете умножение (или любое другое) и нажимаете ок. Таким образом, столбцы будут числовыми.

Это может быть ручная работа, но это было единственное решение, которое я нашел для этой проблемы.

person Deep Frozen    schedule 28.12.2012