hoffe, dass ihr mir helfen könnt.
hab eine Spalte in einem view, das das Datum als Ergebnis liefert.ich werde am besten das Problem graphisch darstellen, dass es deutlicher wird.
CREATE OR REPLACE FORCE VIEW „Name“(w,M,Q,Gültigab,Gültigbis…)
From…
Where Table.„Gültigbis“ > SYSDATE
ORDER BY TABLE2 M;
liefert dies View:
w Mnr Q Gültigab Gültigbis
1425 4254 100 12.01.2007 01.12.2999
1425 4254 100 11.12.2010 01.12.2999
will jetzt in meinem view nur 1 zeile mit Höchter Datumswert angezeigt wird.Wenn eine Matnr nur aus einem zeile besteht soll die als Ergebnis liefern unabhängig von der Zeit.
Vielen dank im voraus.
Hey Tom,
vielen dank für deine Antwort.
ich habe vorhin mit MAX(Gültigab) probiert liefert aber das gewünschte ergebnis nicht.hab mein View vielleicht nicht vollständig vorgestellt.Also:
CREATE OR REPLACE FORCE VIEW
„Name“(w,M,Q,Gültigab,Gültigbis…)
select w,M,Q,max(Gültigab),Gültigbis…
From…
Where Table.„Gültigbis“ > SYSDATE
group by w,M,Q,Gültigbis …
HAVING (((„tab1“.„Typ“) = ‚w‘)
AND (((„T_b“.„Q“) > 0)
OR ((„TA“.„o“) = ‚ja‘)))
ORDER BY TABLE2 M;
was ist vielleicht nicht sagte, dass im view eine Matnr mit verschiedenen Q oder gleich genauso bei typ aber nur bei einem matnr M spalte diese verschiedenen Datums anzeigt, will nur der jungste Datum vom Gültigab rauskriegen egalt ob die sätze doppelt sind hauptsache das jungste datum.
kann mir bitte jemand sagen, was für fehler hab hier mein
SQL-Statement
kommt dieser Fehler ORA-00934: Gruppenfunktion ist hier nicht
zulässig
wenn ich bei select MAX(DATE),…,…
from inner join
wehre G > SYSDATE
GROUP BY MAX(DATE),…,…,…
Having
Order by Date
Weil das max eine Aggregatfunktion ist, der ein group by zugrunde liegt, sprich: Du kannst das Group-By ermittelt den Max-Wert und so kann dieser nicht in das Group-By einbezogen werden.
hi;
HAB DIE cODE KOMPILIERT OHNE FEHLER ABER ZEIGT MIT KEINE DATENSÄTZE VON M;
WHERE („Gültigbis“ = (SELECT MAX(„Gültigbis“) FROM TABELLE))
WEI? JEMAND VIELLEICHT; WORA ES LIEGT DANKE