Habi Geschrieben 18. März 2008 Geschrieben 18. März 2008 Hallo allerseits, ich habe ein SQL-Problem, dass ich nicht alleine gebacken bekomme. Ich habe im Moment ein Statement, dass stark reduziert so aussieht SELECT * FROM tabelle T1, tabelle2 T3 WHERE T1.termin < TODAY + (10*T3.wizeit) Dort werden alle Teile aus einer Tabelle ausgelesen, bei denen ein Bestelltermin einen gewissen Zeitraum in der Zukunft liegen, das passiert über einen festen Faktor und der Wiederbeschaffungszeit des Artikels (10 * Wiederbeschaffungszeit). Jetzt möchte ich aber eigentlich folgendes: Gib mir alle Teile, die innerhalb der nächsten x Tage bestellt werden, wobei x mindestens 30 Tage sind und max. 10*Wiederbeschaffungszeit. Eine MAX-Funktion für den WHERE Teil hab ich nicht gefunden. Aber ideal wäre irgendwie sowas: ... WHERE T1.termin < TODAY + (MAX(30, (10*T3.wizeit)) Weiss einer wie ich sowas mit SQL bauen kann? Grüße Habi Zitieren
Amenos Geschrieben 18. März 2008 Geschrieben 18. März 2008 mein sql ist zwar schon bisschen her aber ich würds mit nem sub-select auf x versuchen á la select * (das richtige einsetzen) from * (das richtige einsetzen) where x > 30 and x < max(t*..) (x sind die tage bis bestellung) und diesen select dann in den "normalen" select einbinden Zitieren
dr.dimitri Geschrieben 18. März 2008 Geschrieben 18. März 2008 Welche Datenbank und welche Version dieser verwendest Du? Dim Zitieren
Habi Geschrieben 19. März 2008 Autor Geschrieben 19. März 2008 Hi, ich verwende Informix Version 10 Grüße Habi Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.