Das Forentreffen 2018 findet am 20./21. April in Dresden statt. Weitere Infos hier
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

Date() - 100

Alles zum SQL-Dialekt

Moderator: Moderatoren

Antworten

Quiz Fragen

ich kenne alle 4 Antworten ohne es zu überprüfen
0
Keine Stimmen
ich weiss wie ich die 4 Antworten raus bekomme
0
Keine Stimmen
ich weiss nicht die Antworten und nicht wie ich es raus bekomme
2
100%
 
Abstimmungen insgesamt: 2

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10571
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Date() - 100

Beitrag von AUGE_OHR » Fr, 08. Mär 2013 23:53

hi,

wenn ich in einen Xbase++ Code hätte wie so was

Code: Alles auswählen

IF ! ((mdSysdate - oRecCur:FieldGet('dtebegin')) >= nDays)
und daraus eine SQL Query machen soll.

Code: Alles auswählen

("SELECT <put fields here> FROM <put table name here>"+;
" WHERE Today() - DTEBEGIN >= ?",;
geht es "so" schon mal nicht

ein "Vergleich" als Query funktioniert nur mit dem selben "Type" und hier wird mit "Datum" gearbeitet.

Code: Alles auswählen

where abzudate > '2012-12-31' and abzudate < '2013-4-30'
hier wird mit Field "Type Datum" und "Datum String" gearbeitet was funktioniert.

Code: Alles auswählen

where abzudate > '2012-12-31' - 100
funktioniert nicht weil der Parser "String" - "numerisch" annimmt was zum Fehler führt !

Code: Alles auswählen

where abzudate > timestamp '2012-12-31' + interval '10 days'
hier "sage" ich ihm das es sich um ein TimeStamp ( String ) handelt und gebe ihm ein INTERVAL von '10 Days'

Code: Alles auswählen

where abzudate > DATE '2012-12-31' + interval '10 days'
so kann man es als DATE ( String ) und INTERVAL verwenden.

und dann hat PostgreSQL noch den OVERLAPS operator

(start1, end1) OVERLAPS (start2, end2)
(start1, length1) OVERLAPS (start2, length2)

so und hier nun die Quiz Fragen : was kommt bei folgenden Query raus ( .T. / .F. ) ?

Code: Alles auswählen

die " ´ " müssen " ' " sein !!! ( das über dem "#" )

1.)   SELECT (DATE ’2001-02-16’, DATE ’2001-12-21’) OVERLAPS
   (DATE ’2001-10-30’, DATE ’2002-10-30’);

2.)   SELECT (DATE ’2001-02-16’, INTERVAL ’100 days’) OVERLAPS
   (DATE ’2001-10-30’, DATE ’2002-10-30’);

3.)   SELECT (DATE ’2001-10-29’, DATE ’2001-10-30’) OVERLAPS
   (DATE ’2001-10-30’, DATE ’2001-10-31’);

4.)   SELECT (DATE ’2001-10-30’, DATE ’2001-10-30’) OVERLAPS
   (DATE ’2001-10-30’, DATE ’2001-10-31’);
gruss by OHR
Jimmy

Antworten