Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
использование значения функции в условии in
|
|||
|---|---|---|---|
|
#18+
Есть функция, которая возвращает список значений в соответствии с заданной логикой (возвращает числа (INT) в цикле foreach). Если сделать execute function get_divs_id(), то функция работает вроде правильно (возвращает верные значения): (expression) 23 24 25 26 27 А вот как теперь значение этой функции использовать в SQL запросе, что-то не соображу? Пытаюсь выполнить select * from divisions where id in get_divs_id() а в получаю ошибку "Right hand side of IN expression must be a COLLECTION type." А как правильно сделать этот самый тип? Функция простая: CREATE FUNCTION get_divs_id() RETURNING INT; DEFINE aDivision INT; DEFINE aRecDiv INT; FOREACH cursor1 FOR SELECT div_id INTO aDivision FROM divisions WHERE chief_id=get_id() RETURN aDivision WITH RESUME; FOREACH cursor2 FOR SELECT div_id INTO aRecDiv FROM divisions WHERE parent_id=aDivision RETURN aRecDiv WITH RESUME; END FOREACH; END FOREACH; END FUNCTION; Да, речь идет о SPL! Заранее благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 15:26 |
|
||
|
|

start [/forum/topic.php?fid=44&tid=1609124]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
60ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 135ms |

| 0 / 0 |
