Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.12;
Скачать: CL | DM;

Вниз

VIEW   Найти похожие ветки 

 
Ruslan.   (2003-04-22 14:15) [0]

Как сохранить результат запроса как новая таблица?
Т.е. что бы запрос не возвращал результат а создавал новую таблицу и кидал результат в эту таблицу. Я сделал бы это с помощью виртуальных таблиц (VIEW) но там не поддерживаются UNION, GROUP BY и др.


 
Johnmen ©   (2003-04-22 14:22) [1]

В чем философский смысл ?


 
Val ©   (2003-04-22 14:47) [2]

угу, разъясните, будьте любезны, а то чем-то нехорошим попахивает.


 
Ruslan.   (2003-04-22 15:17) [3]

Есть две таблицы:
1)REESTRADV
(CODE,REGNOM,FAMILIYA)
2)ANKETA
(A_CODE,LINK,
DATE_IN,-дата поступления на работу
DATE_OUT)-дата увольнения

-----------------------------------------------------------
select REGNOM,LINK, FAMILIYA,
CAST(SUM(((DATE_OUT-DATE_IN)/365))-0.5 as integer) as stag,
from reestradv JOIN anketa on
ANKETA.LINK=REESTRADV.CODE
WHERE DATE_OUT IS NOT NULL
GROUP BY ANKETA.LINK,reestradv.code,reestradv.regnom,
reestradv.FAMILIYA

UNION

select REGNOM,LINK,FAMILIYA,
CAST(SUM((("TODAY"-DATE_IN)/365))-0.5 as integer) as stag,
from reestradv JOIN anketa on
ANKETA.LINK=REESTRADV.CODE
WHERE DATE_OUT IS NULL
GROUP BY ANKETA.LINK,reestradv.code,reestradv.regnom,
reestradv.FAMILIYA

В результате такого запроса получается:

------------------------------
|РЕГ.НОМЕР |LINK|ФАМИЛИЯ|Стаж|
------------------------------
|1 |1 |ИВАНОВ | 3 | - если есть дата увольнения
------------------------------
|1 |1 |ИВАНОВ | 2 | - это если нет дата увольнения то от текущей
------------------------------ даты вычитается дата поступления на работу
|2 | 2 |ПЕТРОВ | 2 |
------------------------------
|2 | 2 | ПЕТРОВ| 4 |
------------------------------


Как сделать общую группировку и суммирование стажа в этом запросе

На счет философского смысла: я хотел сделать этот запрос как отдельную таблицу(VIEW) и при выборке
сгруппировать повторяющиеся записи с суммированием в поле стаж.

Подскажите пожалуйста может все это по проще можно сделать, а я тут ерундой занимаюсь.
Заранее спасибо.


 
Жук ©   (2003-04-22 15:36) [4]

Напишите ХП для вычисления стажа.


 
SiJack ©   (2003-04-22 16:09) [5]

Select ... into может поможет


 
Val ©   (2003-04-22 16:58) [6]

>Ruslan. (22.04.03 15:17)
прислушайтесь к Жук © (22.04.03 15:36).
а потом обыкновенный селект из хп.



Страницы: 1 вся ветка

Текущий архив: 2003.05.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
3-34347
Chery
2003-04-22 13:44
2003.05.12
Догрузка данных из архива в текущую БД


6-34523
stone
2003-03-13 09:25
2003.05.12
Ошибка при посылке письма через Outlook


3-34368
AERO
2003-04-18 17:34
2003.05.12
Как в цикле создавать поля в новой таблице?


1-34510
race1
2003-04-29 13:54
2003.05.12
WindowState


14-34616
swordent
2003-04-22 16:19
2003.05.12
php > ... DELPHI!