Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / как проверить наличие элемента в множестве / 3 сообщений из 3, страница 1 из 1
24.08.2007, 17:35
    #34751719
Gold_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как проверить наличие элемента в множестве
Добрый день.

Сразу с примера:

DEFINE l_set_rights set (CHAR (25) not NULL); --объявляю множество
--заполняю данными
INSERT INTO TABLE(l_set_rights) SELECT TRIM(name) FROM object_field WHERE id_object = 145 ;
--хочу проверить если в множестве элемент 'id_type_departament'
IF 'id_type_departament' IN (l_set_rights) THEN
LET l_note = 'EEEEEEE';
END IF;


Ошибка при выполнении 7610
Invalid collection literal value.

Пробую след. конструкцию:
IF SET{'id_type_departament'} IN (l_set_rights) THEN
LET l_note = 'EEEEEEE';
END IF;

Видимо происходит сравнение множеств целиком. (условие IF не выполняется)

Подскажите, как проверить наличие элемента в массиве.
Спасибо.
...
Рейтинг: 0 / 0
27.08.2007, 13:14
    #34754441
TmpFile()
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как проверить наличие элемента в множестве
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
CREATE TABLE object_field (
  id_object integer,
  name char( 25 )
);

insert into object_field values ( 145 , 'id_type_departament');

drop procedure t_set (); 
create procedure t_set () returning varchar( 40 );
 
  DEFINE l_set_rights set (CHAR ( 25 ) not NULL); 
  Define res varchar( 40 );

  INSERT INTO TABLE(l_set_rights) SELECT TRIM(lower(name)) FROM object_field WHERE id_object =  145 ;

  IF ('id_type_departament' IN l_set_rights) THEN
    LET res = 'Есть';
  else
    LET res = 'Нет';
  END IF;
  return res;

end procedure; 

execute procedure t_set ();

Работает.
...
Рейтинг: 0 / 0
27.08.2007, 15:04
    #34755074
Gold_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как проверить наличие элемента в множестве
Спасибо
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / как проверить наличие элемента в множестве / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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