2010-12-09 6 views
1

Hintergrund
Im Versuch, einen Bericht über Ingres zu schaffen, wo wir finden 2 Termine ($ BEGIN_DATE und $ end_date)
dieser Bericht mich mit Fehlern aus einem System zur Verfügung stellt, die aufgetreten zwischen den beiden Daten.
Wenn diese Daten weniger als einen Tag auseinander liegen, sollte ich einen detaillierteren Bericht haben.Mehr als ein SELECT in ingres Report Writer

Frage
Gibt es eine Möglichkeit mehr als eine Auswahl in diesem Bericht auf der Differenz zwischen den Daten abhängig haben?
wie:

$end_date - $begin_date = difference 
.QUERY 

if difference < 1 day 
    select col1, col2, count(*) as number from table 
    group by col1, col2 
else 
    select col1, count(*) as number from table 
    group by col1 

Oder stattdessen eine if-Anweisung innerhalb der SELECT haben, im nicht ein erfahrener SQL-Benutzer so nicht sicher, dass letzte, wenn ihr sogar möglich.

Jede Hilfe wäre toll, oder irgendwelche Hinweise, was ich suchen sollte.

Antwort

1

Erstellen Sie einen Proc und verwenden Sie $ begin_date & @end_date Parameter.

Fügen Sie Ihre Logik in proc hinzu, und die Ausgabe ist eine dynamische Tabellenstruktur.

Sie sollten das Objekt automatisch an die Struktur im Programm anpassen lassen.

+0

Beschlossen, zwei Berichtsdateien (.rw) für jedes Szenario zu erstellen und den proc (.com) zu verwenden, um zu entscheiden, welcher Bericht verwendet werden soll, danke Jack, dass er mich in die richtige Richtung gebracht hat. –