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

Вниз

Проблема с запросом(хп)   Найти похожие ветки 

 
Domkrat ©   (2004-07-27 14:56) [0]

Ув. Мастера. Подскажите пожалуйста.

Таблица: MOVE

ID    LS    OLDVALUE  NEWVALUE   MOVEDATE
1      1      Петя        Коля                  
2      1      Коля        Саша
3      1      Саша       Игорь
4      1      Игорь       Вася 01.01.2004

Требуется  одна строка

ID   LS    OLDVALUE  NEWVALUE  MOVEDATE

     1      Петя       Вася  01.01.2004


 
Sandman25 ©   (2004-07-27 15:01) [1]

select ls,
(select oldvalue from move m1 where m.ls=m1.ls and
id=(select min(id) from move m2 where m2.ls=m.ls)),
(select newvalue from move m1 where m.ls=m1.ls and
id=(select max(id) from move m2 where m2.ls=m.ls))
 from move m
 group by ls


 
Sandman25 ©   (2004-07-27 15:03) [2]

Лучше написать ХП с
select min(id), max(id), ls
 from move
 group by id
и в цикле перебирать получаемые значения и извлекать оставшиеся значения


 
Domkrat ©   (2004-07-27 15:07) [3]

Спасибо большое, но и первый запрос довольно быстро сработал.
Попробую написать хп.


 
Sandman25 ©   (2004-07-27 15:08) [4]

>Спасибо большое, но и первый запрос довольно быстро сработал.

Это заслуга оптимизатора, он оказался на высоте.


 
dimds   (2004-07-27 15:09) [5]

а прынцип выборки какой?


 
Domkrat ©   (2004-07-27 15:14) [6]

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


 
dimds   (2004-07-27 15:23) [7]

select pole1...poleN where id=(select min(id) from table) into
[outparams];
select pol1....polen where id=(select max(id) from table) into
[outparams];
suspend;


 
Sandman25 ©   (2004-07-27 15:24) [8]

[7] dimds   (27.07.04 15:23)

Во вложенных select должно быть where.


 
dimds   (2004-07-27 15:26) [9]

ну это примерный вариант разумеется нужные условия и выходные параметры нужно подставить


 
Sandman25 ©   (2004-07-27 15:28) [10]

понятно


 
Domkrat ©   (2004-07-27 15:31) [11]

Вариант Sandman25 ©   (27.07.04 15:03) [2] удовлетворяет всем условиям.
Всем спасибо.



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

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

Наверх




Память: 0.49 MB
Время: 0.022 c
4-1089605641
DION
2004-07-12 08:14
2004.08.22
Инфо по винту...


14-1091693213
Polevi
2004-08-05 12:06
2004.08.22
реклама пива


3-1089268594
Григорьев Антон
2004-07-08 10:36
2004.08.22
БД без СУБД


3-1090781545
viktor
2004-07-25 22:52
2004.08.22
Перенос данных с *.dbf в *.fdb


11-1079105829
McSimm
2004-03-12 18:37
2004.08.22
Внимание! Сайт переезжает на новый хостинг.