Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / IBM DB2 7.2 конвертация из VARCHAR в INT / 5 сообщений из 5, страница 1 из 1
20.09.2014, 20:08
    #38752560
ibbk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IBM DB2 7.2 конвертация из VARCHAR в INT
Вообщем суть задачи: давным давно была прога которая собирала данные в базу IBM DB2 7.2 [win 2000] теперь просят сделать аналог программы но под современные ОС но структуру бд изменять нельзя. Так вот данные там хранятся в хитром виде. Столбец VARCHAR и в него последовательно записаны значения типа INT . На пример VAL [00 00 00 01 00 00 00 03 00 00 00 05] что в результате дает дает в INT 1, 3, 5 (надеюсь понятно объяснил)
я делаю запрос типа:
Код: sql
1.
SELECT SUBSTR(VAL, :index*4+1, 4) FROM TABLE

получаю набор из 4х байт.
Вопрос как мне получать результат в виде INT??? так как по этому значению требуется на уровне запроса принимать решение что с ним делать дальше.
PS
Прошу сильно не пинать так как информации по DB2 v7 очень очень мало. На данный момент даже не смог дистрибутив найти приходится пользоваться образом на виртуалке.
...
Рейтинг: 0 / 0
21.09.2014, 14:37
    #38752907
Hunterik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IBM DB2 7.2 конвертация из VARCHAR в INT
Ничего кроме как самому написать конвертор не приходит в голову...
Вот Вам пример .
Только пример сделан для двух полубайт, у вас их восемь, кажды полубайт это степень 16-и (little endian).
1 полубайт - 16^0+значение полубайта (0=0, ..., 9=9, A=10, B = 11, ...)
2 полубайт - 16^1+значение полубайта
3 полубайт - 16^2+значение полубайта
4 полубайт - 16^3+значение полубайта
...
Потом всё скаладываете - получаете ваш integer.
Может, функции есть какие специализированные, но в 7-ке вряд ли - она старая, как какашка мамонта.
...
Рейтинг: 0 / 0
22.09.2014, 01:53
    #38753154
Hunterik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IBM DB2 7.2 конвертация из VARCHAR в INT
На значение полубайта нужно умножать конечно же... =)
...
Рейтинг: 0 / 0
22.09.2014, 09:33
    #38753235
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IBM DB2 7.2 конвертация из VARCHAR в INT
ibbk,

А что, int(SUBSTR(VAL, :index*4+1, 4)) не даёт то, что надо?
DB2 7.2 fp14 for Windows
...
Рейтинг: 0 / 0
03.10.2014, 22:22
    #38766664
ibbk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
IBM DB2 7.2 конвертация из VARCHAR в INT
Mark Barinsteinibbk,

А что, int(SUBSTR(VAL, :index*4+1, 4)) не даёт то, что надо?
DB2 7.2 fp14 for Windows

Нет это преобразует из строки в число, то-есть строка '123456' будет преобразована в 123456 а у меня массив байт.
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / IBM DB2 7.2 конвертация из VARCHAR в INT / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]