Brauche Hilfe: was bedeutet diese SQL - Zeile?

antwortsuchende

Grünschnabel
Hallo zusammen,

ich versuche die to_date SQLs herauszufinden, was diese bedeuten, aber ich verstehe diese nicht. Vor allem, warum werden diese Art konstruktionen benutzt?:

(test1.cust_end_dt = to_date(v_day2||v_month2,'DDMM') OR test2.cust_end_dt = to_date(v_day2||v_month2,'DDMM'))

Eigentlich, diese OR Aussagen sind identisch




SELECT

test1.cust_end_dt info1,
test2.cust_end_dt info2,
...
...

FROM s_org_ext test1,
s_org_ext test2

...

WHERE
...
AND test1.name = mis.char_val
AND test2.name = mid.char_val
...

AND (test1.cust_end_dt = to_date(v_day2||v_month2,'DDMM') OR test2.cust_end_dt = to_date(v_day2||v_month2,'DDMM'))


Kann mir das bitte erklären?. Thanks in advance...
 
item: bitte den Code in [code=sql]mein Code[/code] setzen

item: Um was für eine DBMS handelt es sich? Oracle? MS SQL? MySQL?
 
Zuletzt bearbeitet von einem Moderator:
Also 1.
die Funktion to_date() wandelt in ein Datum um (sieht nach Oracle-Syntax aus)
to_date(v_day2||v_month2,'DDMM')
erzeugt ein Datum mit v_day2 als Tag und v_month2 als Monat im aktuellen Jahr
Beispielsweise wird aus
to_date('03' || '05' ,'DDMM') dann der 3.5.2010.

2. die beiden OR-Teile sind fast identisch, bis auf das Feld, welches geprüft wird.

test1.cust_end_dt und
test2.cust_end_dt sind
verschiedene Felder, die geprüft werden.
Hoffe das hilft ein wenig weiter
 
Zurück