
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.02.2004, 20:42
|
|||
|---|---|---|---|
|
|||
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Привет! Подскажите пожалуйста кто знает. Проблема такая: пробую написать процедуру в которой входная переменная должна использоваться в операторе IN (или BETWEEN), т.е. IN (:входная переменная). Может я что не так пишу или может вообще в этих операторах нельзя такое применять? SQL InterBase 6.5 диалект 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.02.2004, 21:31
|
|||
|---|---|---|---|
|
|||
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Pa, pa daragoi :) Cto tij hocjes, ponjatj mozjet tolko ..... Malcik ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.02.2004, 22:15
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Можечт что-то и не так - примерчик приведи ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 17:14
|
|||
|---|---|---|---|
|
|||
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Привет! Если сможешь - помоги, очень нужно. Ситуация такая: for select * from USERS where USERS.K_REGION in (:IPVALUE1) into :IPVALUE2 do suspend; где IPVALUE1- входной параметр IPVALUE2 - выходной параметр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 17:20
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
видимо vikulya пытается передавать как параметр массив? это не работает. in и between в принципе разные вещи, поэтому between :a and :b сработает. если я неправильно стелепатировал, то для полноты информации нужно еще типы переменных сказать, и сказать какая ошибка возникает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 17:34
|
|||
|---|---|---|---|
|
|||
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Попробую внести ясность. Дело обстоит так: пользователь на клиенте в процессе диалога формирует список районов по которым надо вывести данные из таблицы USERS (к примеру расстановкой флажков на форме). Так вот необходимо как-то передать коды этих районов. Если бы они были последовательными то можно было бы сделать через BETWEEN. Но это не так. Я ,извиняюсь за выражение, уже всю башку сломала думая как это сделать. Неужели ничего нельзя придумать?! Люди, помогите! Насчёт типов переменных: пробовала сделать входной параметр BLOB-м для того чтобы передать как массив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 18:02
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
не знаю другого способа кроме как передавать это как строку (тип varchar(ну, например, 255)) и потом ее разбирать. чтобы разбирать надо будет использовать UDF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 18:23
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Строка и UDF конечно хорошо но все таки. Есть еще один выход темповая таблица заполняемая нужными значениями и в процедуру выдаем id из темповой таблицы под которым хранятся наши значения простым связыванием таблиц получаем результат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 18:44
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
а временные таблицы нельзя делать вроде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 19:18
|
|||
|---|---|---|---|
|
|||
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
Псевдовременные... Плюс псевдогенератор spid'а... %) Если очень захотеть - счастья может и не быть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.02.2004, 19:20
|
|||
|---|---|---|---|
Использование входных переменных в операторах IN и BETWEEN |
|||
|
#18+
В этом случае процедуру лучше не использовать. Сделай обычным запросом. Бери FIBPlus и наслаждайся макросами. Запрос можно сделать так: select * from USERS @@WH@ А потом пишешь: with DataSet do begin Close; ParamByName('WH').AsString:='where USERS.K_REGION in ('+ <перечисляешь что хочешь>+')'; Open end ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=40&mobile=1&tid=1579262]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
153ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 414ms |

| 0 / 0 |
