powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Данные многих таблиц в одну
3 сообщений из 3, страница 1 из 1
Данные многих таблиц в одну
    #32502565
Okram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем!

Помогите написать SQL запрос.
Есть у меня такое дело


SELECT * FROM TABLE(GetFT(29,1,9)) AS FT

p1 p2
-1 0
-1 1
-1 8

то есть функция GetFT возвращает таблицу (может быть и пустая).

В клиенте я делаю много запросов SELECT * FROM TABLE(GetFT(x,y,z)) AS FT.

Можна ли написать такой запрос или SP по такой схеме:

1) я могу сформировать таблицу TV

SELECT * FROM TV

x y z
29 1 9
5 8 3
8 8 6
4 8 1

2) потом зделать что-то в таком роде

SELECT
x ,
y ,
x ,
(SELECT * FROM TABLE(GetFT(x,y,z)) AS FT)
FROM TV

и как результат получу

x y z p1 p2
29 1 9 -1 0
29 1 9 -1 1
29 1 9 -1 8
5 8 3 -1 1
5 8 3 -1 0

Можно чтото такое соорудить ?

Заранее преблагодарен.
...
Рейтинг: 0 / 0
Данные многих таблиц в одну
    #32502670
Okram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде готово :) (некоторые параметры пока что статичны но ето не проблема зделать их динамичными)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
WITH RPL (p1, p2, p3 , isroot) AS
			   (  	SELECT 	 0  as p1 ,  0  as p2 , y as p3 ,  1  as isroot
			      	FROM TV
			    UNION ALL
			      	SELECT 	CHILD.p1 as p1, 
					CHILD.p2 as p2, 
                                                                PARENT.p3 ,
                                                                 0  as isroot
			      	FROM RPL PARENT, TABLE(GetFT( 29 ,PARENT.p3, 9 )) AS CHILD
                                                                where PARENT.isroot= 1 
			     )
			SELECT p1,p2,p3, isroot
			FROM RPL
                                                WHERE isroot= 0 
...
Рейтинг: 0 / 0
Данные многих таблиц в одну
    #32502672
Okram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде готово :) (некоторые параметры пока что статичны но ето не проблема зделать их динамичными)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
WITH RPL (p1, p2, p3 , isroot) AS
			   (  	SELECT 	 0  as p1 ,  0  as p2 , y as p3 ,  1  as isroot
			      	FROM TV
			    UNION ALL
			      	SELECT 	CHILD.p1 as p1, 
					CHILD.p2 as p2, 
                                                                PARENT.p3 ,
                                                                 0  as isroot
			      	FROM RPL PARENT, TABLE(GetFT( 29 ,PARENT.p3, 9 )) AS CHILD
                                                                where PARENT.isroot= 1 
			     )
			SELECT p1,p2,p3, isroot
			FROM RPL
                                                WHERE isroot= 0 
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Данные многих таблиц в одну
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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