Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

[Oracle] Union [D7]


McSimm2 ©   (2003-06-25 16:41:00) 

Как правильно написать следующий запрос? :

select t.field1 as f1, "" as f2
from table1 t
union
select "" as f1, t.field2 as f2
from table1 t

Мне нужно, что бы возвращалась выборка из двух полей именно через
2 select`a из одной таблицы....


Sandman25   (2003-06-25 17:47:00) [1]

McSimm2 (25.06.03 17:02)

Тогда так.

CREATE temp table tbl (f1, f2,..., fn int, added_field int);
insert into tbl
select ..., ""
from ...;
update tbl set added_field =
(select ...);

PS. Синтаксис для создания таблицы может отличаться.
Убивать таблицу в конце хранимой не надо.


VAleksey   (2003-06-25 17:38:00) [2]


> McSimm2

Тебя уже несколько раз спросили "В чем проблема?".
Спокойно делаешь Union и усе :-))

select t.who_start as f1, "" as f2
from sfc_sessions t
union
select "" as f1, t.who_start as f2
from sfc_sessions t

Вот такая фигня у меня легко отрабатывает.
Выражайся яснее :-)))).


McSimm2   (2003-06-25 17:02:00) [3]

Sandman25 © (25.06.03 16:57)
Ну это программно придётся вмешиваться, хотелось бы всё в одном запросе своять....

А как в Oracle может не быть временных таблиц? С`сreate`ил таблицу, а в конце выполнения программы просто убил её...


Johnmen   (2003-06-25 17:01:00) [4]

>McSimm2 (25.06.03 16:53)

А в чем проблема ? С указанным запросом ?


Sandman25   (2003-06-25 16:57:00) [5]

Если в Oracle нет временных таблиц, то придется изменять select.
Если есть, то после заполнения временной таблицы можно будет запустить update по полю, в которое первый select записал null.


McSimm2   (2003-06-25 16:53:00) [6]

Выборка вычисляемых полей идёт из кучи связанных таблиц.
Я хотел бы к этой куче добавить пустое поле, а в добавленном unit в это поле вернул ещё один результат вычисления.
просто та выборка которая уже есть я что то не соображу как туда запихнуть ещё одно условие. Вот и хотел бы как в привёдённом выше примере "проскочить"...


Johnmen   (2003-06-25 16:46:00) [7]

А в чем проблема ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо