Veröffentlicht 21. Oktober 200222 j Hallo! Wie kann ich eine Datumsdifferenz in eine Tabelle einbauen, die mir die Differenz in Tagen anzeigt. z.B.: 06.10.02 - 10.10.02 = 4 Tage Im Formular sollen die Daten in verschiedenen Datenfeldern eingegeben werden, jedoch soll die Differenz nur in der Tabelle sein und nicht im Formular ausgegeben werden. Bozzo
21. Oktober 200222 j Sybase 5.0 bzw. Sybase 8.0 SELECT days('2002-10-10')-days('2002-10-06') FROM "DBA".Tabellenname
21. Oktober 200222 j Autor Danke SAGA! Ich hab aber keine Ahnung von Programmieren (FiSi). Könntest du das vielleicht für Blöde erklären.:marine
21. Oktober 200222 j Zu berechnende Werte werden i.d.R. nicht in der DB gespeichert. Was ist, wenn sich die Ausgangswerte aendern? Dann muesstest Du fuer jedes berechnete DB-Feld jedes Mal ein Update ausfuehren. Das verringert die DB-Geschwindigkeit. Sie gehoeren entweder in Formulare oder, wenn sie nicht angezeigt werden sollen, in das Programm.
21. Oktober 200222 j Original geschrieben von Bozzo Danke SAGA! Ich hab aber keine Ahnung von Programmieren (FiSi). Könntest du das vielleicht für Blöde erklären.:marine Ui...sorry. DAYS( datetime-expr ) Return the number of days since an arbitrary starting date. DAYS( date-expr, date-expr ) Returns the number of days from the first date to the second date. The number may be negative. Hours, minutes and seconds are ignored. Soll heissen, es wird ein beliebiges Datum ausgewaehlt und die days-Funktion zaehlt die Tage von diesem Datum bis zu Deinem (06.10.2002 bzw 10.10.2002). Dann subtrahierst Du die Anzahl der Tage der beiden Datumswerte voneinander und bekommst die Differenz.
21. Oktober 200222 j Original geschrieben von hades Sie gehoeren entweder in Formulare oder, wenn sie nicht angezeigt werden sollen, in das Programm. Jau, das ist wohl wahr. @Bozzo Rein theoretisch könnte man die Differenz dynamisch in der SQL-Abfrage bilden (ohne den Wert in der Tabelle zu speichern) und ihn dann einfach dem entsprechenden Feld zuweisen. Alternativ kannst Du natuerlich auch die "hauseigenen" Funktionen der Programmiersprache verwenden. <edit>Welche DB/Programmiersprache werden denn eigentlich verwendet?</edit>
21. Oktober 200222 j Mein Vorschlag war auf Access 97 nicht anwendbar, und ich hab leider nicht wirklich viel Ahnung von Access. hades, hast Du eine Idee? Es muesste doch eigentlich bei Access ein Äquivalent zu der days-Funktion von Sybase geben, oder?
21. Oktober 200222 j Autor Es gibt die DatDiff-Funktion, in der die Anzahl Zeitintervalle zwischen zwei Daten ermittelt wird. Jedoch funktioniert es irgendwie nicht.
21. Oktober 200222 j Original geschrieben von Bozzo Es gibt die DatDiff-Funktion, in der die Anzahl Zeitintervalle zwischen zwei Daten ermittelt wird. Jedoch funktioniert es irgendwie nicht. Was steht denn in dem Buch bzw. der Hilfe drin? Poste mal evtl. den Text. Und dann noch die Anweisung, die Du geschrieben hast.
21. Oktober 200222 j Autor Hey, ich habs auf nem anderen Weg geschafft!!!:bimei Hab im SteuerelementInhalt des entsprechenden Steuerelements einfach ne simple Rechnung eingegeben und es funktioniert. Man, hab ich mich gefreut!!! Aber vor dem Problem, dass es nicht in die Tabelle übernommen wird steh ich immer noch. Naja, das wird dann auch noch. Bozzo
21. Oktober 200222 j Original geschrieben von Bozzo Hey, ich habs auf nem anderen Weg geschafft!!!:bimei Aber vor dem Problem, dass es nicht in die Tabelle übernommen wird steh ich immer noch. Naja, das wird dann auch noch. Na siehste, klappt doch. Warum muss das denn unbedingt in die Tabelle rein? Siehe hades' Posting weiter oben...so unbedingt geschickt ist das nicht. Funktioniert es nicht mit einem einfachen insert?
22. Oktober 200222 j Wenn Du was ausdrucken willst, kannst Du ja entweder einen Bericht generieren oder - wenn es wie eine Tabelle aussehen soll - eine Abfrage generieren und die ausdrucken. In einer Tabelle würde ich den Wert aus oben genannten Gründen nicht speichern. k.o.b
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.