AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Oracle LAG/LEAD Funktion falsche Sortierung?
Thema durchsuchen
Ansicht
Themen-Optionen

Oracle LAG/LEAD Funktion falsche Sortierung?

Ein Thema von David Martens · begonnen am 12. Okt 2010 · letzter Beitrag vom 12. Okt 2010
 
David Martens

Registriert seit: 29. Sep 2003
205 Beiträge
 
Delphi XE Enterprise
 
#2

AW: Oracle LAG/LEAD Funktion falsche Sortierung?

  Alt 12. Okt 2010, 14:01
Jetzt hab ich das Problem gelöst:

SQL-Code:
for fkt_rec in (
select
  Baustein,
  LAG(Baustein, 1) over (order by rownum) "PreBaustein",
  Funktion,
  LAG(Funktion, 1) over (order by rownum) "PreFunktion",
  Name,
  rownum
from
  (select
     Baustein,
     Funktion,
     Name,
     rownum
   from
     Tabelle1, Tabelle2
   where
     Tabelle1.LfdNrA = Tabelle2.LfdNrA
   order by
     Baustein, Funktion, Name, rownum)
order by
  rownum
) loop

  if fkt_rec."PreBaustein" is null
  then
    dbms_output.put_line('--////////////////////////////////////////////////////////////////////////////////');
    dbms_output.put_line('-- ' || fkt_rec.Baustein);
  end if;

  if fkt_rec.Baustein <> fkt_rec."PreBaustein"
  then
    dbms_output.put_line('');
    dbms_output.put_line('--////////////////////////////////////////////////////////////////////////////////');
    dbms_output.put_line('-- ' || fkt_rec.Baustein);
  end if;

  if fkt_rec.Funktion <> fkt_rec."PreFunktion" or fkt_rec."PreFunktion" is null
  then
    dbms_output.put_line('');
    dbms_output.put_line('-- ' || fkt_rec.Funktion);
    dbms_output.put_line('');
  end if;

  dbms_output.put_line(fkt_rec.Name);
end loop;
Im Subselect wird einmalig und richtig die Sortierung festgelegt und kann somit von der LAG Funktion nicht mehr durcheinander gebracht werden.

Geändert von mkinzler (12. Okt 2010 um 14:03 Uhr) Grund: Code-Tag durch SQL-Tag ersetzt
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz