Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / выборка из базы / 3 сообщений из 3, страница 1 из 1
06.11.2007, 17:18
    #34919735
alexey_mas1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из базы
Добрый день!

Возникла необходимость передавать в процедуру параметром первые разряды счетов по которым необходимо выбрать все счета

например
select * from account where acc[1,4] in ('2202','2203')

на вход процедуры которая делает выборку я даю временную таблицу(tmpidlist_accmask) где
хранится разряд счета и маска счета
например
3 210
4 2202
4 2203
2 26


пытаюсь сделать так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
FOREACH select razr, mask_acc into vRazr,vMask_acc
        from tmpidlist_accmask

 INSERT INTO tmpidlist_acc(acc)
 SELECT a.acc
 FROM account a
 WHERE a.status='O' 
 and a.acc[ 1 ,vRazr] in (vMask_acc) and a.currency not in ('980');

END FOREACH;

при компиляции ругается тут
Код: plaintext
1.
and a.acc[ 1 ,vRazr] 
на синтаксическую ошибку.
Возможно ли таким образом подставлять переменную в запрос? если нет то каким образом можно такое реализовать?

Informix 9.21
...
Рейтинг: 0 / 0
06.11.2007, 17:23
    #34919753
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из базы
alexey_mas1
and a.acc[1,vRazr]
and substr(a.acc,1,vRazr)
...
Рейтинг: 0 / 0
07.11.2007, 10:13
    #34920912
TmpFile()
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из базы
alexey_mas1 and a.acc[1,vRazr] in (vMask_acc)

и без IN

Код: plaintext
and substr(a.acc, 1 ,vRazr) = vMask_acc 
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / выборка из базы / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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