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
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
dr.dimitri Geschrieben 18. März 2008 Geschrieben 18. März 2008 Welche Datenbank und welche Version dieser verwendest Du? Dim
Habi Geschrieben 19. März 2008 Autor Geschrieben 19. März 2008 Hi, ich verwende Informix Version 10 Grüße Habi
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden