AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL DateTime nur Datum vergleichen
Thema durchsuchen
Ansicht
Themen-Optionen

SQL DateTime nur Datum vergleichen

Ein Thema von Salomon · begonnen am 15. Jan 2008 · letzter Beitrag vom 15. Jan 2008
Antwort Antwort
Benutzerbild von Salomon
Salomon

Registriert seit: 9. Jun 2002
453 Beiträge
 
#1

SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 10:34
Datenbank: MS SQL 2003 • Zugriff über: ADO
Moin,
sagt mal wie vergleiche ich bei zwei MS SQL Server DateTime Feldern nur den DatePart? Die zu vergleichenden Felder haben nämlich unterschiedliche Urzeiten, daher geht einfaches Gleichsetzen nicht.

Ich habe es mit einem Cast probiert, allerdings passt da die Syntax nicht...

SQL-Code:
CAST ( SUBSTRING(DateField1, 1, 10) AS DateTime) =
 CAST ( SUBSTRING(DateField2, 1, 10) AS DateTime)
Gibt es eine einfache Möglichkeit den Vergleich zu machen? Warum bietet der MS SQL Server eigentlich keine Datentypen für nur Date oder Time? Ich glaube erst der neue soll das können...

Gruß
Marcus
01001000 01100001 01101100 01101100 01101111
01010111 01100101 01101100 01110100 00100001

http://www.it-adviser.net
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#2

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 10:38
Hallo,

probiere mal to_date (weiß nicht, ob es das bei MSSQL gibt).
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#3

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 10:39
Zitat von Salomon:
... nur den DatePart?...
Hai Marcus,

wenn mich nicht alles täuscht heisst die Funktion bei MS-SQL DatePart
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 10:42
Hi,

so sollte es gehen

CONVERT(varchar(8), DateField1, 112) = CONVERT(varchar(8), DateField2, 112)
Gruß
Ansgar
Ansgar
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 10:56
Was ist an DatePart so schlecht?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Salomon
Salomon

Registriert seit: 9. Jun 2002
453 Beiträge
 
#6

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 11:03
Hi Sharky,
jupp die heißt wirklich DatePart

Der Convert von Angos funktioniert auch.

To_Date gibts bei MS SQL nicht, das scheint von Oracle zu kommen.Oracle <-> MS SQL
01001000 01100001 01101100 01101100 01101111
01010111 01100101 01101100 01110100 00100001

http://www.it-adviser.net
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: SQL DateTime nur Datum vergleichen

  Alt 15. Jan 2008, 12:08
Hi,

Zitat von mkinzler:
Was ist an DatePart so schlecht?

Nichts hab ich auch nicht behauptet. (mir war DatePart selber auch unbekannt)
Habe halt nur eine mögliche Lösung gepostet

Gruß
Ansgar
  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:16 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