|
|
|
Вопрос про запрос
|
|||
|---|---|---|---|
|
#18+
В общем нужно распарсить средствами SQL строку вида : 'Proj1,Proj2,proj3,ProjN...' (СУБД TeraData) из чего собственно вопрос и возник. Фишка в том, что эта строка передается входным параметром в макрос: CREATE MACRO DBT_APP_D.macroNAME ( projects varchar(2000), dateIn date, dateOut date ) AS ( Select tmpProject.project_name as Project, TABLE1.log_id, TABLE1.success_id, TABLE1.operation_id, TABLE1.table_id, TABLE1.message, TABLE1.date_change, TABLE1.time_change FROM TABLE1 JOIN (SELECT project_name FROM TABLE2 WHERE project_name IN (:projects))tmpProject ON TABLE1.message LIKE ('%'||tmpProject.project_name||'%') WHERE TABLE1.date_change BETWEEN :dateIn AND :dateOut; ); если в строку WHERE project_name IN (:projects))tmpProject вместо переменной projects поставить значение 'Project1','Project2'... то все работает, а вот с переменной - фиг. Про смысл запроса говорить не буду он и так понятен. по правам: не могу создать процедуру в базе, только макрос. Много написано про функции парсинга вот тут http://www.sql.ru/articles/mssql/03060701ArraysAndListsInSQLServer.shtml напимер, но функцию создать не получается, параметры объявления отличаются от SQL-Serv. т.к. СУБД закрытая, то мануал крайне скудный все что нашел по созданию функции CREATE FUNCTION Functions.Square (val Integer) RETURNS Integer LANGUAGE C NO SQL SPECIFIC Functions.SquareInt RETURNS NULL ON NULL INPUT PARAMETER STYLE TD_GENERAL EXTERNAL SECURITY INVOKER EXTERNAL NAME 'CS#c:\functionsrc\SquareInt.c#F#SquareInt'; ПОМОГИТЕ кто чем может... Проект стоит... может парсинг во временную таблицу можно в макросе сделать? и как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2008, 12:43 |
|
||
|
Вопрос про запрос
|
|||
|---|---|---|---|
|
#18+
Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2008, 14:31 |
|
||
|
|

start [/forum/topic.php?fid=56&msg=35311809&tid=2015347]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 10ms |
| total: | 272ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...