Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo

Ich habe folgendes Probelm:

Ich habe eine Tabelle (nennen wir sie mal b)

Sie beinhaltet Datumwerte wie z.B. 2006-12-07 12:33:27

2006-11-09 13:14:24

Nun will ich in meiner abfrage alle einträge mit dem Datum vom vortag.

Habe das ganze gelöst in dem ich folgenden WHERE Clause benutz habe:

WHERE substring(b.datum from 1 for 10) = '2006-12-07'

Doch durch den Substring dauert die Abfrage sehr lange...

Nun Wollte ich mal fragen ob ich den WHERE Clause nich auch irgendwie so formulieren kann:

WHERE b.datum like '2006-12-07%'

Doch ich bekomme bei WinSQL immer nur die Meldung:

Wildcard matching may not be used with non-character types. (State:S1000, Native Code: FFFFFF25)

Kann mir jemand helfen, wie ich den Clause so formuliere kann , so dass das ganze schneller geht als mit SUBSTRING?

Mfg

Max

Geschrieben

Ok, Informix is nicht meine Welt, aber prinzipiell solltest bei einem Datum nicht auf einen String vergleichen wenn sichs vermeiden laesst.

Solltest eher auf Datum vergleichen,also

where datum >= 2006-11-07 00:00:00 and datum < 2006-11-08 00:00:00

Goos

Geschrieben

ja wenns so einfach wäre *g* sorry hät ich glaub vorhin erwähnen sollen *g*

Die SQL Abfrage wird von einem VB Programm ausgeführt, wo das Datum dann eine Variable ist *g* also ich führe sozusagen das programm jeden morgen aus um zu sehen was gestern passiert ist

Geschrieben

Nun will ich in meiner abfrage alle einträge mit dem Datum vom vortag.


SELECT * From b WHERE datum = CURRENT_DATE()-1

Wobei CURRENT_DATE vielleicht durch eine Funktion deines DBMS ersetzt werden muss. EDIT: Kein DBMS speichert ein Datum tatsächlich als String! Du könntest für ein beliebiges Datum (1.Jan 2006 z.B.)auch

SELECT * From b WHERE datum = '2006-01-01'

nehmen. Egal ob das ein Datetime-Feld ist.

EDIT2:

OT ;)

Deine Sig:

Wenn für Amokläufe Killerspiele verantwortlich gemacht werden,

mach ich Pornos für Vergewaltigungen verantwortlich!

Das tun manche ja auch (u.A.), nicht nur du :P

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...