AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL alle heutigen Termine abfragen
Thema durchsuchen
Ansicht
Themen-Optionen

SQL alle heutigen Termine abfragen

Ein Thema von Grolle · begonnen am 21. Apr 2009 · letzter Beitrag vom 21. Apr 2009
Antwort Antwort
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#1

SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:16
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBDAC
Hallo,

wie bekomme ich mit einer SQL-Abfrage alle Termine heraus, die heute sind, kommen, waren? Das Feldformat in der Datenbak ist Timestamp.

Viele Grüße ...

  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 11. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:21
Abgesehen davon dass die Frage nicht eindeutig ist, versuche es damit:
SELECT * FROM Termine WHERE Datum = '21.04.2009'
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:24
SELECT * FROM Tabelle WHERE zeitfeld >= :Zeit1 AND zeitfeld <:Zeit2 Der Parameter Zeit1 erhält den Wert SysUtils.Date
Parameter Zeit2 erhält den Wert SysUtils.Date + 1.0
Damit werden alle Datensätze von Heute (Uhrzeit 0:00 bis 23:59:59.9999) gefunden.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:26
Leider kenn ich Firebird nicht so genau, darum schlag ich dir folgendes vor:
select * from tabelle where datum>(Tagesdatum-1) and datum<(Tagesdatum+1) damit solltest du alle Heutigen Termine erwischen können, egal zu welcher Uhrzeit sie sind.

Gruß
K-H
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#5

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:40
Guten Morgen
'SELECT * FROM USERSCHEDULES WHERE (STARTTIME>='''+DateToStr(currentTimestamp)+' 00:00:00'+''' AND STARTTIME<'''+DateToStr(currentTimestamp)+' 23:59:00'+''') AND... '

  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 17:55
Zitat von Grolle:
'SELECT * FROM USERSCHEDULES WHERE (STARTTIME>='''+DateToStr(currentTimestamp)+' 00:00:00'+''' AND STARTTIME<'''+DateToStr(currentTimestamp)+' 23:59:00'+''') AND... '
Das ist aber ganz wüster Code!
Nimm doch wie von mir vorgeschlagen Parameter.
Gerade bei Datums/Zeitfelder sind doch Parameter fast schon Pflicht.
Delphi-Quellcode:
query.sql.text := 'SELECT * FROM USERSCHEDULES WHERE STARTTIME >= :Zeit1 AND STARTTIME <:Zeit2';
query.ParamValues['Zeit1'] := SysUtils.Date; // Systemdatum
query.ParamValues['Zeit2'] := SysUtils.Date+ 1.0; // Systemdatum + 1 = Morgen
query.Open;
@p80286:
Tagesdatum-1 wäre ja der 20. April 0:00 Uhr.
Die Bedingung datum>(Tagesdatum-1) wäre auch erfüllt, wenn z.B. datum=20.April 14:00Uhr wäre.
Das ist dann aber gestern, denn heute ist der 21. April.
Andreas
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#7

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 18:25
Hi,
Zitat von shmia:
Das ist aber ganz wüster Code!
habe ich nur schnell hingetippt. Ohne Parameter wirds wirklich unleserlich

Viele Grüße ...

  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.004 Beiträge
 
Delphi 2009 Professional
 
#8

Re: SQL alle heutigen Termine abfragen

  Alt 21. Apr 2009, 18:59
Zitat von Grolle:
Hallo,

wie bekomme ich mit einer SQL-Abfrage alle Termine heraus, die heute sind, kommen, waren? Das Feldformat in der Datenbak ist Timestamp.

Viele Grüße ...
Firebird 2.1:

SQL-Code:
select *
 from tabelle
 where cast(feldname as date) = current_date
Das Delphi-Datum würde ich nicht unbedingt verwenden. Das kann schon mal verstellt sein - auf dem SQL-Server sollte das eher seltener passieren.
Michael Justin
habarisoft.com
  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 17:10 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