![]() |
Datenbank: Oracle • Zugriff über: ODAC
SQL Abfrage - Datum zwischen X und Y
Hi,
ich möchte über das eine Editfeld abfragen "Datum von" und mit dem anderen Editfeld "Datum bis" . Mit welcher SQL Abfrage kann ich nun diese beiden Parmeter vergleichen und mir die Werte auslesen lassen? Mfg Major |
Re: SQL Abfrage - Datum zwischen X und Y
sollte das im Prinzip nicht in etwa so gehen:
SQL-Code:
Grüße
select * from table where date > dateFrom and date < dateTo
Klaus |
Re: SQL Abfrage - Datum zwischen X und Y
Variante 1: datum between :wert1 and :wert2
Variante 2: datum >= :wert1 and datum <= :wert2 Denk bei den Vergleichen aber daran, dass der Datentyp DATE auch die Uhrzeit enthält. Zweckmäßigerweise solltest du den Nachkommateil mit TRUNC(datum) abschneiden. Grüße Mikhal |
Re: SQL Abfrage - Datum zwischen X und Y
Delphi-Quellcode:
// DATE FROM
if DesEdit2.Text <> '' then SmartQuery1.SQL.Add(''); end; //DATE END; if DesEdit3.Text <> '' then begin SmartQuery1.SQL.Add(''); end; ICh habe ja zwei Felder in denen ich eine SQL-Abfrage machen muss und es kann auch vorkommen das man auch nur mal wissen will "Datum von" ohne die Angabe bis oder anderst herum. |
Re: SQL Abfrage - Datum zwischen X und Y
Dann baust Du Dir den SQL-String dynamisch zusammen und setzt die Parameter entsprechend.
|
Re: SQL Abfrage - Datum zwischen X und Y
ODAC stellt Macros zur Verfügung. Damit kannst du dir den Auswerteteil zusammensetzen:
SQL-Code:
in deinem Quelltext stellst du das Macro dann zusammen:
SELECT
... FROM TABELLE WHERE ... $DATUMVERGLEICH
Delphi-Quellcode:
Grüße
...
if MySmartQuery.Active then MySmartQuery.Close; if DesEdit2.Text <> '' then MySmartQuery.MacroByName.Value = ' AND TRUNC(Datum) = ' + Trunc(StrToDate(DesEdit2.Text)); ... MySmartQuery.Open; Mikhal [edit=mkinzler]Code-Tags durch SQL und Delphi-Tag ersetzt Mfg, mkinzler[/edit] |
Re: SQL Abfrage - Datum zwischen X und Y
gibt es da keine einfache Lösung ohne diese date (routine) ?
Wenn man z.B. jetzt alle IP Adressen herausfinden will die zwischen 232.18.147.53 und 288.92.141.55 liegen, wie würde man das denn machen? |
Re: SQL Abfrage - Datum zwischen X und Y
Evtl. würde es sich anbieten, die IP-Adressen in einem anderen Format (z.B. als Integer) in der DB zu speichern.
|
Re: SQL Abfrage - Datum zwischen X und Y
Als String sollten die Adressen auch zu vergleichen sein
|
Re: SQL Abfrage - Datum zwischen X und Y
Aber ob man so alle "Zwischen-IPs" bekommt?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz