AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Mit Datumfelder rechnen
Thema durchsuchen
Ansicht
Themen-Optionen

Mit Datumfelder rechnen

Ein Thema von Eppos · begonnen am 9. Jan 2007 · letzter Beitrag vom 9. Jan 2007
Antwort Antwort
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#1

Mit Datumfelder rechnen

  Alt 9. Jan 2007, 08:38
Datenbank: IB/FB • Version: 6.5/1.5 • Zugriff über: BDE
Hallo zusammen,

habe folgendes Problem:

Ich mache eine Auswertung, auf gewisse Zeiträume. Diese lade ich aus eine Datenbank.
Mein SQL lautet:
SQL-Code:
Select
Benutzer,
Sum(EndeDatum - StartDatum) as Laufzeit
from Benutzung
groupy by Benutzer
Mein Problem ist es nun, dass Ergebnis aus der Spalte Laufzeit zu Formatieren in "dd hh:mm:ss".
Es stehen in der Spalte, Werte bis in den unendlichkeitsbereich z.b. "1,111111111 E5", aber dann auch wieder Werte,
mit z.b. 0,0000235564

Kann mir da jemande helfen?

Danke,
Eppos
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 09:32
Versuch mal:
SQL-Code:
Select
    Benutzer,
    CONVERT( Sum(EndeDatum - StartDatum) as TimeStamp) as Laufzeit
from
    Benutzung
group by
    Benutzer;
Markus Kinzler
  Mit Zitat antworten Zitat
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 10:18
Danke für deine rasche Antwort!
Mit Convert meinst du warscheinlich CAST, ist bei FireBird bzw. InterBase so.

Hat leider nicht funktioniert, bekomme überhaupt kein Ergebnis mehr!

Eppos
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#4

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 10:25
Hallo,
versuch doch einmal, schrittweise heranzugehen:
SQL-Code:
Select
Benutzer,
Sum(EndeDatum) as SummeEnde,
Sum(StartDatum) as SummeStart,
Cast(SummeEnde - SummeStart as TimeStamp) as Laufzeit
from Benutzung
grouped by Benutzer
Vielleicht musst Du dazu auch noch Sum(EndeDatum) umwandeln. Auf jeden Fall solltest Du besser sehen, was passiert.

Gruß Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 10:32
Hallo Eppos,

hier findest du vielleicht auch noch einen Hinweis auf die Lösung deines Problems: klick

Grüße vom marabu
  Mit Zitat antworten Zitat
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 13:13
Danke, für die Antworten! Doch es hat gar nichts funktioniert!

Weiß vielleicht noch jemand, einen rat?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 13:27
Hast du außerhalb deiner Anwendung (Database Desktop, IBExpert) getestet, damit sich Fehler nicht überlagern?

Welche Fehlermeldungen erhältst du?

Wie sieht das DDL-Statement (CREATE) aus, damit wir deinen Fehler nachvollziehen können?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Mit Datumfelder rechnen

  Alt 9. Jan 2007, 13:32
U.U. hat die manuelle Berechnung der Werte aus dem Double-Wert.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz