Bestimmte Werte aus Datenbank anzeigen und Zeitfragen
-
hallo,
ich hab eine Frage bzgl. auslesen von Werten aus eine Datenbank. Wie kann ich alle Werte in einem bestimmten Zahlenraum in ein Array packen und sortiert ausgeben?
Falls ich nicht erklären konnte, noch einpaar Infos:
Feldnamen: "Zeit", "Text"
Aufgabe: Alle Texte, die in der letzten Stunde eingetragen wurden, sortiert nach Zeit ausgeben!
Zweite Frage:
Wie kann ich die aktuelle Zeit (inkl. Datum) in Sekunden zurückkriegen? Zum Vergleich: Wie die Funktion time() in php!
Dritte Frage:
Wie kann ich aus den Sekunden "TT-MM-JJJJ HH-MM-SS" machen? Gibt es eine fertige Funktion dafür?
Vielen Dank schon mal im Voraus, Ümit
P.S.: Benutze Borland C++Builder 5
-
Original erstellt von <uemit>:
**
Falls ich nicht erklären konnte, noch einpaar Infos:Feldnamen: "Zeit", "Text"
Aufgabe: Alle Texte, die in der letzten Stunde eingetragen wurden, sortiert nach Zeit ausgeben!
**Für sowas gibs SQL:
select t.* from tabelle t where to_number(to_char(t.datum,'HH24'))>to_number(to_char(sysdate,'HH24'))-1 order by t.zeit
Original erstellt von <uemit>:
**
Zweite Frage:Wie kann ich die aktuelle Zeit (inkl. Datum) in Sekunden zurückkriegen? Zum Vergleich: Wie die Funktion time() in php!
**ka. Zur not in der Hilfe deines Datenbankservers schauen oder zusammenrechnen
[ Dieser Beitrag wurde am 14.05.2003 um 22:03 Uhr von AndreasW editiert. ]
-
Danke schonmal für die Antwort.
Ich hab jetzt ein SQL-Query genommen (ich hoffe das ist richtig) und folgenden Code da rein geschrieben:
--------
select TableTexte.* from Nachrichten.db
where TableTexte.Zeit > sysdate - 3600
order by TableTexte.Zeit
--------Jetzt kommt folgender Fehler, wenn ich active auf true setzen will:
--------
Unbekannte Tabelle oder Korrelationsname.
--------"Nachrichten.db" ist der Dateiname meiner Datenbank.
Bei DataSource hab ich den entsprechenden DataSource auch eingetragen.Bin halt ein DAU, was SQL betrifft
mfg, Ümit
-
Hi,
da hilft nur ein Tutorial
Wenn du in die FAQ geschaut hättest, hättest du das Tutorial bereits gefunden.
-
Beispiel:
Tabellenname: test datum | Kunde | Betrag 01.01.2003| OBI | 2000 02.01.2002| OBI | 1000 01.01.2002| Kaufhof | 4000 02.01.2002| Kaufhof | 7000
im from-Teil muss nun der tabellenname
Beispeil:
Select * from test where datum= to_date('01.0.2003','DD.MM.YYYY')
für tabellennamen kann man auch Aliase einsetzen. dafür definiert man im Fromteil nach den Tabellennamen ein Alias und benutzt den in den anderen teilen:
Select t.* from test t where t.datum= to_date('01.0.2003','DD.MM.YYYY')
Dein SQL müsste dann so aussehen:
select Alias.* from Nachrichten Alias where Alias.Zeit > sysdate - 3600 order by Alias.Zeit
[ Dieser Beitrag wurde am 15.05.2003 um 08:59 Uhr von AndreasW editiert. ]
-
Danke nochmal für die Antworten.
Also SQL will irgendwie nicht, wenn ich den neuen Code versuche kommt "Ungültiger Feldname sysdate."Im Tutorial hab ich das mit Filter gesehen und ausprobiert, das geht auch. Allerdings weiß ich nicht, wie auf die Anzahl der restlichen Daten komme. FieldCount gibt die Anzahl aller Daten zurück, auch wenn Filtered auf true ist!
mfg, Ümit
-
Hi,
Datumformat kannst du mit
SetDateFormat="DD/MM/JJ";
stellen. Ist fast wie bei excel.
-
danke, aber ich glaub ich hab mich etwas falsch ausgedrückt mit dem Datum.
Mal angenommen ich habe die Zeit in Sekunden nach 1.1.1970 oder so.
Hab dann einen Wert wie 561654663 (<--- hab ich jetzt einfach mal so geraten)
Jetzt will ich daraus zum Beispiel "23.2.2003 13:45" machen.Ich meine also eine Funktion wie zum Beispiel:
--------
AnsiString DatumAnzeige
int DatumSpeicher
DatumSpeicher = FunktionFuerRueckgabeDerAktuellenZeitInSekunden();
DatumAnzeige = Umwandeln("dd.mm.yyyy HH.MM.SS");
--------So ungefähr meine ich das. Und diese Funktionsnamen brauche ich!
mfg, Ümit
-
OK, brauche jetzt nur noch eine Funktion, mein Code bis jetzt:
------
AnsiString DatumAnzeige
int DatumSpeicher
DatumSpeicher = time(NULL);
DatumAnzeige = Umwandeln("dd.mm.yyyy HH.MM.SS", DatumSpeicher);
-----Also nur noch die Funktion zum Umwandeln von den Sekunden (z.b. 1000000000) zur lesbaren Variante!
mfg, Ümit